Java-SpringMVC事务提交

来源:互联网 发布:八字反推软件 编辑:程序博客网 时间:2024/05/24 02:37
1.方法级事务提交:在方法名上面加入如下代码:
@Transactional(readOnly = false, propagation = Propagation.REQUIRES_NEW)
  示例如下图所示:
           
  在AppContext.xml加入如下配置文件:
<!-- 配置事务管理器 -->   <bean id="transactionManager"class="org.springframework.jdbc.datasource.DataSourceTransactionManager">   <property name="dataSource" ref="dataSource" /><!-- -->   <property name="nestedTransactionAllowed" value="true"></property>   </bean><tx:annotation-driven transaction-manager="transactionManager"proxy-target-class="true" />
2.代码级事务提交:当部分代码需要进行手动提交时,在方法里面加入如下代码:
DefaultTransactionDefinition def = new DefaultTransactionDefinition();  def.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW);// 事物隔离级别,开启新事务  TransactionStatus status = txManager.getTransaction(def);// 获得事务状态  try {   //逻辑代码,可以写上你的逻辑处理代码   txManager.commit(status);  } catch (Exception e) {   txManager.rollback(status);  }
  示例如下图所示:
 
  在AppContext.xml加入如下配置文件:
xmlns:p="http://www.springframework.org/schema/p" 
<bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager" p:dataSource-ref="dataSource"/>


原创粉丝点击