升级我的项目我在这里想着关于交易。那么,我不太确定何时应该在Spring中使用我的Hibernate查询事务。不是我完全不明白交易是什么,我想我可以,但是我需要使用get*
类型查询的交易,只需设置read-only
属性?何时在Spring中使用Hibernate进行事务?
<tx:advice id="txAdvice" transaction-manager="transactionManager">
<tx:attributes>
<!-- all methods starting with 'get' are read-only -->
<tx:method name="get*" read-only="true" />
<!-- other methods use the default transaction settings -->
<tx:method name="*" />
</tx:attributes>
</tx:advice>
对于get*
查询是否有效?因为,据我所知,使用事务应该像更新,插入,删除和这样的查询一样完成。我在这里错过了什么吗?
我通常也包含访问事务中的数据库的每个业务操作。最近我想知道这是否会导致任何可能减慢应用程序的开销。在这种情况下,使用仅用于创建,删除和更新的事务是否合理? – Giorgio 2012-03-04 18:30:18
我们公司要求我们在每次交易之后提交,甚至包括SELECT语句。我当然可以看到只包装UPDATE语句的位置会产生更少的开销。 – tjg184 2012-03-05 13:18:20