• Spring之事务控制


    编程式事务控制相关对象

    PlatformTransactionManager平台事务管理器(Interface)

    内部封装控制事务的方式,根据不同技术要使用不同的平台,在使用前要在Spring里配置

    管理事务就是成功时提交,失败时回滚,提交和回滚方法里的参数是TransactionStatus类型的status事务状态,而获取事务状态信息的函数是TransactionStatus类型的getTransaction,其参数TransactionDefination类型的defination

    TransactionDefination事务定义对象

    内部封装控制事务的参数信息,要在Spring里配置


    分别是:默认级别,读未提交,读已提交(解决脏读),可重复读(解决不可重复度),串行化(解决全部问题,性能很低)

    另外我们要通过配置的方式告诉Spring框架我们要使用哪个具体的事务平台管理器

    TransactionStatus事务状态对象

    内部封装不同时间点事务各状态的信息,无需配置,状态信息会被动改变

    基于XML的声明式事务控制

    什么是声明式事务控制

    如何进行声明式事务控制(转账业务)

    Account对象:

    dao实现类:

    service实现类:

    时,如果没用事务存在,会导致转账业务转出方扣钱,转入方不会收到钱。因此我们引入AOP思想,以AccountService作为目标对象创造代理对象,内部的tarnsfer作为切点,通过增强的方式添加事务。

    controller:

    applicationContext:内部配置了IOC(包括jdbcTemplate),AOP,事务控制

    通知 事务的增强,Spring已经提供,无需自己写,需要引入命名空间:含有tx的

    中的


    IOC:

    平台事务管理器:

    事务通知:

    AOP:

    基于注解:略

  • 相关阅读:
    各种HTTP错误消息含义
    fastjson生成和解析json数据
    javascript性能优化
    js正则表达式test方法、exec方法与字符串search方法区别
    JavaScript中字符串的match与replace方法
    js 字符串indexof与search方法的区别
    JavaScript indexof方法
    JavaScript数组方法说明
    setTimeout模拟setInterval调用
    javascript forEach方法与jQuery each区别
  • 原文地址:https://www.cnblogs.com/maomaodesu/p/12200848.html
Copyright © 2020-2023  润新知