Spring全家桶 - 事务抽象

事务方面, PlatformTransactionManager是基础类,其他的事务类都是继承该类。

 

 

 

Spring该值默认为-1,表示使用数据库的默认事务隔离级别。

 

 

 

 

 

 

 

 

  @EnableTransactionManagement 有几个参数可以配置:

1、proxyTargetClass  

  • jdk的Proxy代理(必须传入接口)  --spring默认使用
  • cglib(可以是类而非接口)

2、mode  默认为使用JDK动态代理(Proxy),如果需要使用一些高级功能,则可以设置为使用 AspectJ。

3、order   设置transaction advisor 的执行顺序,默认是最后一个。 

  一个joinpoint可以有多个advisor,默认让transaction advisor 最后再处理。

 

@Transaction的参数:

1、rollbackFor  可以设置 一个 Throwable 的数组,用来标明 如果方法抛出这些异常,则事务进行回滚。

  在@Transactional注解中如果不配置rollbackFor属性,那么事物只会在遇到RuntimeException的时候才会回滚。

 

 

 jdk的Proxy代理(必须传入接口)  --spring默认使用

        cglib(可以是类而非接口)

posted on 2019-12-01 17:09  HB1  阅读(188)  评论(0)    收藏  举报

导航