• Spring 事务


    目标

      事务回顾

      Spring事务管理的一组API

      Spring的编程式事务管理

      Spring声明式事务管理

    事务回顾

      什么是事务?

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

      事务的特性

        原子性:

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

        一致性:

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

        隔离性:

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

        持久性:

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

    Spring接口介绍

        PlatformTransactionManager  平台事务管理器

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

          

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

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

            脏读:

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

            不可重复读:

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

            幻读:

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

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

                     

               事务的传播行为

              解决业务相互调用的问题

              

        TransactionStatus  事务具体运行状态

            

    Spring的编程式事务管理

        

    Spring的声明式的事务管理

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

          

        基于tx/aop

          引入命名空间

            

             配置

               

          基于annotation

               

                     

        

  • 相关阅读:
    JS中的弧度与角度
    canvas 酷炫粒子文字的代码解析
    用canvas绘制一个太极图案
    JavaScript中的三角函数
    canvas 使用getImageData()方法获取canvas的每一个像素点的rgba值。以及如何提取该像素点的rgba值。
    Kubernetes(K8S)简介
    git回滚本地所有未提交的更改
    【动手学深度学习pytorch】学习笔记 3.6. softmax回归的从零开始实现 pycharm
    实验十 团队作业7:团队项目用户功能验收测试
    Shopro商城,基于Fastadmin和Uniapp进行开发的多平台(微信公众号、微信小程序、H5网页、AndroidApp、IOSApp)购物商城 1.3.8 义美
  • 原文地址:https://www.cnblogs.com/fg-fd/p/10044136.html
Copyright © 2020-2023  润新知