zoukankan      html  css  js  c++  java
  • Spring 事务

    目标

      事务回顾

      Spring事务管理的一组API

      Spring的编程式事务管理

      Spring声明式事务管理

    事务回顾

      什么是事务?

        事务指的是逻辑上的一组操作,这组操作要么全部成功,要么全部失败

      事务的特性

        原子性:

          是指事务是一个不可分割的工作单位,事务中的操作要么都发生,要么都不发生

        一致性:

          指的是事务前后数据的完整性必须保持一致

        隔离性:

          指的是多个用户并发访问数据时,一个用户的事务不能被其他用户的书屋所烦扰,多个并发事务之间数据要被相互隔离

        持久性:

          指的是一个事务一旦被提交,它对数据库中数据的改变是永久性的,即使数据库发生故障也不应该对其有任何影响

    Spring接口介绍

        PlatformTransactionManager  平台事务管理器

          Spring为不同的持久框架提供了不同PlatformTransactionManager接口实现

          

        TransactionDefinition  事务定义信息(隔离、传播、超时、只读)

          如果不考虑隔离级别,会引发安全问题有:

            脏读:

              一个事务读取了另一个事务改写但还未提交的数据,如果数据被回滚,则读到的数据是无效的

            不可重复读:

              在同一事务中,多次读取同一数据返回的结果不同

            幻读:

              一个事务读取了几行记录后,另一个事务插入一些记录,幻读就发生了

              再后来的查询中,第一个事务就会发现有些原来没有的记录

                     

               事务的传播行为

              解决业务相互调用的问题

              

        TransactionStatus  事务具体运行状态

            

    Spring的编程式事务管理

        

    Spring的声明式的事务管理

        基于TransactionProxyFactoryBean的方式:劣势,需为每个方法配置一个

          

        基于tx/aop

          引入命名空间

            

             配置

               

          基于annotation

               

                     

        

  • 相关阅读:
    Bootstrap_让Bootstrap轮播插件carousel支持左右滑动手势的三种方法
    JAVA_用Java来获取访问者真实的IP地址
    Html5_移动前端不得不了解的html5 head 头标签
    ThinkPad_T430重装系统
    JavaScript_JS判断客户端是否是iOS或者Android
    Html5_禁止Html5在手机上屏幕页面缩放
    HttpClient_httpclient 4.3.1 post get的工具类
    HttpClient_使用httpclient必须知道的参数设置及代码写法、存在的风险
    LATEX数学公式基本语法
    为WLW开发Latex公式插件
  • 原文地址:https://www.cnblogs.com/fg-fd/p/10044136.html
Copyright © 2011-2022 走看看