Spring事务管理

  • 事务管理

    • 核心接口

      • PlatformTransactionManager接口

        • TransactionStatus getTransaction(TransactionDefinition definition) 获取事务状态信息
        • void commit(TransactionStatus status) 提交事务
        • void rollback
      • TransactionDefinition 定义事务

        • 事务的隔离级别 MYSQL默认隔离级别 isolation_repeatable_read
        • 事务的传播行为 默认是 propagation_required 如果存在一个事务 就加入 如果不存在 就创建新的
        • 事务的超时时间 timeout_default 默认-1
        • 是否为只读事务 为只读不能修改
      • TransactionStatus 界定事务的状态

    • 事务管理的方式

      • 编程式事务管理
      • 声明式事务管理

        • 基于XML方式的声明式事务

          • 引入tx命名空间
            • <tx:advice id="" transaction=""> // 编写对事务的增强的通知
            • <tx:attributes>
            • <tx: method name="" propagation="" isolation="" read-only=""/> //配置事务的属性
          • 编写AOP 让spring自动为目标形成代理
            <aop:config>
               //切入点
               <aop:poincut expression="execution(* com.ithema.*.*(...))" id=""/>
               //切面 将切入点和通知整合
               <aop:advisor advice-ref="" pointcut="" />
            </aop:config>     

             !注意:

            区别于第八章的切面设置

            <aop:config>
                  <aop:pointcut id="" expresstion=""/>
                  <aop:aspect ref="">//设置切面
                    <aop:before />
                  </aop:aspect>
            </aop:config>
        • 基于注解方式的声明式事务

          • 简化配置文件中的代码       提供@Transactional注解实现事务管理
          • 修改XML配置文件 注册事务管理器驱动
            • <tx:annotation-driven transaction-manager="事务管理器id"/>
          • 修改Dao层实现类 
            • @Transactional(propagation = , isolation = ,readOnly = false) 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值