这两个代码片段有什么区别,基本上我对第一个代码中的这两个代码片段有些困惑,我create
通过开始事务然后提交它来执行操作,而在第二个代码片段中我没有写session.beginTransaction() and tx.commit()
哪个是最好的方法,为什么?
还有一个问题select query
也算交易?还是事务是一系列多个动作,例如在一个工作单元中创建更新和删除?
public boolean createProject(EmployeeProject employeeProject) {
Transaction tx = null;
boolean flag = false;
try {
tx = session.beginTransaction();
session.save(employeeProject);
tx.commit();
flag = true;
} catch (HibernateException e) {
if (tx != null)
tx.rollback();
}
return flag;
}
第二种方法
public boolean createProject(EmployeeProject employeeProject) {
boolean flag ;
try {
session.save(employeeProject);
flag = true;
} catch (HibernateException e) {
flag=false;
}
return flag;
}