参考地址:https://baijiahao.baidu.com/s?id=1661565712893820457&wfr=spider&for=pc
在使用SpringAop代理时,TransactionInterceptor事务拦截器会在目标方法前后进行拦截,CglibAopProxy的intecept方法或JdkDynamicAopProxy的invoke方法会间接调用回调资源的一个计算事务属性(computeTransactionAttribute)方法,检查目标方法如果不是public方法,不会获取@Transactional及属性
1.PROPAGATION_SUPPORTS:如果当前存在事务,加入事务;如果当前没有事务,非事务执行
2.PROPAGATION_NOT_SUPPORTED:以非事务方式执行;如果当前存在事务,则挂起当前事务
3.PROPAGATION_NEVER:以非事务方式执行;如果当前存在事务抛出异常
需要指定Exception的子类
略
略
略