spring事务控制

spring的事务控制
  • Spring提供了一组事务控制的接口,在spring-tx-…jar中.
  • PlatformTransaction接口的实现类 当用JDBC,iBatis,用DataSourceTransactionManger.
  • 基于XML的配置.
    1. 配置事务管理器.
    2. 配置事务的通知. (此时需要导入事务的约束 有aop tx) < tx:advice >
    3. 配置AOP中的通用切入点表达式
    4. 建立事务通知和切入点表达式的关系
    5. 配置事务的属性 (在事务的通知里面嵌入配置.)
	配置事务管理器
	<bean id="transactionManager" class="...DataSourceTransactionManager">
		<property name="dataSource" ref="dataSource"></0100.0.
property>
	</bean>

	配置事务的通知
	<tx:advice id="txAdvice" transaction-manger="transactionManager">
		<tx:attributes>
		<!--isolation:隔离级别 propagation:指定事务的传播行为 增删改用REQUIRED 查询方法选SUPPORTS-->
		<tx:method name="find*" propagation="SUPPROTS" />  <!--即所有以find开头的查询方法-->
	</tx:attributes>
	</tx:advice>

	<aop:config>
		<!--配置切入点表达式-->
		<aop:pointcut id="pt1" expression="execution(* com.hk.service.imp.*.*(..))"></aop:pointcut>
		<!-- 建立事务通知和切入点表达式的关系 -->
		<aop:advisor advice-ref="txAdvice" pointcut-ref="pt1"></aop:advisor>
	</aop:config>
  • 基于注解的配置.

    1. 配置事务管理器.
    2. 开启spring对注解事务的支持. < tx: annotation-driven>
    3. 在需要事务支持的地方使用@Transactional注解 .(属性在这里全部包含,XML更方便,因为在这里,若有5个只读,5个需要读取, 则至少要配6个. [1个全部的,另5个单独配])
  • 编程式事务管理 (了解)

  • 使用TransactionTemplate

Spring框架整合事务管理器即可,见Spring框架整合 文章最后面.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值