注解@Transactional(propagation = Propagation.NOT_SUPPORTED)的属性Propagation

Propagation属性 outMethod() innerMethod
Propagation.MANDATORY .抛出异常 .在outMethod的Transaction中运行
Propagation.NEVER .不在Transaction中运行 .抛出异常
Propagation.NOT_SUPPORTED .不在Transaction中运行 .outMethod的Transaction暂停直至innerMethod执行完毕
Propagation.REQUIRED ( 默认值 ) .新开一个Transaction并在其中运行 .在outMethod的Transaction中运行
Propagation.REQUIRES_NEW .新开一个Transaction并在其中运行 .outMethod的Transaction暂停直至innerMethod中新开的Transaction执行完毕
Propagation.SUPPORTS .不在Transaction中运行 .在outMethod的Transaction中运行

outMethod():不存在已定义Transaction的情况

innerMethod:Transaction已经存在的情况

https://blog.csdn.net/jiesa/article/details/49589387


你可能感兴趣的:(spring)