zoukankan      html  css  js  c++  java
  • Spring框架的事务管理相关的类和API

    1. PlatformTransactionManager接口     -- 平台事务管理器.(真正管理事务的类)。该接口有具体的实现类,根据不同的持久层框架,需要选择不同的实现类!
    2. TransactionDefinition接口          -- 事务定义信息.(事务的隔离级别,传播行为,超时,只读)
    3. TransactionStatus接口              -- 事务的状态
    
    4. 总结:上述对象之间的关系:平台事务管理器真正管理事务对象.根据事务定义的信息TransactionDefinition 进行事务管理,在管理事务中产生一些状态.将状态记录到TransactionStatus中
    
    5. PlatformTransactionManager接口中实现类和常用的方法
        1. 接口的实现类
            * 如果使用的Spring的JDBC模板或者MyBatis框架,需要选择DataSourceTransactionManager实现类
            * 如果使用的是Hibernate的框架,需要选择HibernateTransactionManager实现类
    
        2. 该接口的常用方法
            * void commit(TransactionStatus status) 
            * TransactionStatus getTransaction(TransactionDefinition definition) 
            * void rollback(TransactionStatus status) 
    
    6. TransactionDefinition
        1. 事务隔离级别的常量
            * static int ISOLATION_DEFAULT                  -- 采用数据库的默认隔离级别
            * static int ISOLATION_READ_UNCOMMITTED 
            * static int ISOLATION_READ_COMMITTED 
            * static int ISOLATION_REPEATABLE_READ 
            * static int ISOLATION_SERIALIZABLE 
    
        2. 事务的传播行为常量(不用设置,使用默认值)
            * 先解释什么是事务的传播行为:解决的是业务层之间的方法调用!!
    
            * PROPAGATION_REQUIRED(默认值) -- A中有事务,使用A中的事务.如果没有,B就会开启一个新的事务,将A包含进来.(保证A,B在同一个事务中),默认值!!
            * PROPAGATION_SUPPORTS          -- A中有事务,使用A中的事务.如果A中没有事务.那么B也不使用事务.
            * PROPAGATION_MANDATORY         -- A中有事务,使用A中的事务.如果A没有事务.抛出异常.
    
            * PROPAGATION_REQUIRES_NEW(记)-- A中有事务,将A中的事务挂起.B创建一个新的事务.(保证A,B没有在一个事务中)
            * PROPAGATION_NOT_SUPPORTED     -- A中有事务,将A中的事务挂起.
            * PROPAGATION_NEVER             -- A中有事务,抛出异常.
    
            * PROPAGATION_NESTED(记)     -- 嵌套事务.当A执行之后,就会在这个位置设置一个保存点.如果B没有问题.执行通过.如果B出现异常,运行客户根据需求回滚(选择回滚到保存点或者是最初始状态)
  • 相关阅读:
    一张图搞定OAuth2.0
    OAuth2.0的refresh token
    ACCESS_TOKEN与FRESH_TOKEN
    关于token和refresh token
    如何解决前后端token过期问题
    对外开放的接口验证方式
    python api接口认证脚本
    Python Thrift 简单示例
    整数中1出现的次数(从1到n整数中1出现的次数)
    连续子数组的最大和
  • 原文地址:https://www.cnblogs.com/wyhluckdog/p/10137176.html
Copyright © 2011-2022 走看看