yu870646595
2015-10-27 19:04
查询语句还需要开启事务吗?且失败了就不用提交事务了吧
开启事务的目的是为了确保数据的准确性,如果需要同时执行多条SQL语句,则需要放到事务中进行,只要其中有一行执行失败,则事务回滚。如果只是查询操作,不牵扯对数据库内容的更改,不需要开启事务。但是,在Hibernate中个人建议最好也把查询都放在事务中进行,增删改则必须要放到事务进行。如果当前的Session对象和当前线程绑定,例如:
<property name="current_session_context_class" >thread </property >
再调用session.createQuery()方法执行查询,就会抛出异常。在hibernate中,任何向数据库的从操作都开始于一个事务的开始,结束于一个事务的结束。
”如果只是查询操作,不牵扯对数据库内容的更改,不需要开启事务。但是,在Hibernate中个人建议最好也把查询都放在事务中进行。“
这句话逻辑不通,也没有解释为什么最好放到事务中去,这答案也能被采纳?
“在Hibernate中个人建议最好也把查询都放在事务中进行,增删改则必须要放到事务进行”。 实际工作中事务都是应该尽量少开启,特别是高并发的情况。但Hibernate通常的做法是怎样我还真不清楚。
使用Struts2+Hibernate开发学生信息管理功能
80701 学习 · 754 问题
相似问题