Spring学习笔记(七)----Spring事务管理

Spring 事务管理

事务概念

- 什么是事务
- 事务特性
  - 原子性
  - 一致性
  - 隔离性
  - 持久性
- 读的问题
  - 设置隔离级别

API 介绍

  • 事务管理器

针对不从 Dao 层框架,提供了不用的实现类

编程式事务管理(不用)

声明式事务管理

基于 xml 配置文件

<!-- 已经配置好了 JdbcTemplate 等相关配置 -->
<!-- 1. 配置事务管理器 -->
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
    <property name="dataSource" ref="dataSource"/>
</bean>
<!-- 2. 配置事务增强 -->
<tx:advice id="txAdvice" transaction-maager="transactionManager">
    <!-- 事务操作 -->
    <tx:attributes>
        <!-- 设置事务操作方法匹配规则 -->
        <tx:method name="xxx*" propagation="REQUIRED"/>
        <!-- 以上意思为 以 xxx 开头的方法都可以匹配到 -->
    </tx:attributes>
</tx:advice>
<!-- 3. 配置切面 -->
<aop:config>
    <aop:pointcut expression="execution(* *.*(..))" id="pointcut"/>
    <aop:advisor advice-ref="txAdvice" pointcut-ref="pointcut"/>
</aop:config>

基于注解实现

<!-- 已经配置好了 JdbcTemplate 等相关配置 -->
<!-- 1. 配置事务管理器 -->
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
    <property name="dataSource" ref="dataSource"/>
</bean>
<!-- 2. 开启事务注解 -->
<tx:annotation-driven transaction-manager="transactionManager"/>
@Transactional  // 在需要开启事务的类上注解
public class Class {}
posted @ 2019-09-01 21:52  Posase  阅读(150)  评论(0编辑  收藏  举报