众所周知,在Hibernate中如果没有事务提交,则更改不会影响数据库。但我发现了一些奇怪的事情。代码如下:
ApplicationContext ctx = new ClassPathXmlApplicationContext("Spring.xml");
SessionFactory sessionFactory = (SessionFactory) ctx.getBean("sessionFactory");
Session session = sessionFactory.openSession();
Model model = new Model();
...
session.save(model);
session.flush();
session.close();
即使没有事务,模型也会保存到数据库中,任何人都可以解释一下吗? 任何意见将不胜感激!谢谢!
PS:我使用的是mysql。
最佳答案
session.flush 命令保存了事务。如果错误,您应该使用事务。
关于java - 为什么即使不涉及事务,我也可以使用 hibernate 插入/更新数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14475619/