我有下一个代码:
Color color = new Color(null,"B12",null,1);
Session session=sessionFactory.openSession();
session.setFlushMode(FlushMode.MANUAL);
session.beginTransaction();
session.save(color);
session.clear();
session.getTransaction().commit();
session.close();
sessionFactory.close();
我只是不明白为什么当我指定刷新是手动时数据会存储到数据库中?请帮我解决一下!
最佳答案
原因是session.getTransaction().commit()将所有更改保存到数据库。请参阅此 stackoverflow 帖子。
HIbernate commit() and flush()
Flush 用于在提交之前将项目推送到数据库。
关于java - 为什么session.setFlushMode(FlushMode.MANUAL);之后数据存入数据库 session .保存(); ( hibernate ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42375131/