spring 事务 hibernate

来源:互联网 发布:js删除指定cookie 编辑:程序博客网 时间:2024/06/05 01:50
  1. //硬性提交事务  
  2.                 familyDAO.getHibernateTemplate().flush(); 



<tx:advice id="txAdvice" transaction-manager="transactionManager"> 
   <tx:attributes> 
      <tx:method name="get*" read-only="true" /> 
      <tx:method name="load*" read-only="true" /> 
      <tx:method name="find*" read-only="true" /> 
      <tx:method name="search*" read-only="true" /> 
      <tx:method name="add*" propagation="NOT_SUPPORTED" /> 
      <tx:method name="*" /> 
   </tx:attributes> 
</tx:advice>



PROPAGATION_REQUIRED: 如果当前没有事务,就新建一个事务,如果已经存在一个事务中,加入到这个事务中。这是最常见的选择。 

PROPAGATION_SUPPORTS: 支持当前事务,如果当前没有事务,就以非事务方式执行。 

PROPAGATION_MANDATORY:使用当前的事务,如果当前没有事务,就抛出异常。 

PROPAGATION_REQUIRES_NEW:新建事务,如果当前存在事务,把当前事务挂起。 

PROPAGATION_NOT_SUPPORTED:以非事务方式执行操作,如果当前存在事务,就把当前事务挂起。 

PROPAGATION_NEVER:以非事务方式执行,如果当前存在事务,则抛出异常。 

PROPAGATION_NESTED:如果当前存在事务,则在嵌套事务内执行。如果当前没有事务,则执行与PROPAGATION_REQUIRED类似的操作。