简单的来说,4.2.3版本,save()之后,使用flush不需要事务的支持,但是5.2.10使用flush需要事务的支持,简单的代码编写如下:
public class Test1Dao {
private SessionFactory sessionFactory;
//通过构造器传入SessionFactory对象
public Test1Dao(SessionFactory sessionFactory) {
this.sessionFactory = sessionFactory;
}
public void update() {
try {
Session session = sessionFactory.openSession();
//开启事务控制
Transaction transaction = session.beginTransaction();
TestInfo testInfo = (TestInfo) session.createNativeQuery("SELECT * from test_info").addEntity(TestInfo.class).uniqueResult();
testInfo.setName("测试dsdbj");
session.update(testInfo);
transaction.commit();
} catch (Exception e) {
e.printStackTrace();
}
}
}