事务传播行为
- propagation_required 方法必须运行在事务中,如果事务存在,则运行,如果事务不存在 则开一个新的事务。
- propagationrequirednew 必须运行在自己的事务中,启动一个自己的新事务,如果存在当前事务,在该方法执行期间,当前事务会被挂起,如果使用jatTransactionManager,则需要访问transactionManager
- propagation_supports 不需要事务,如果已经有事务,那就在事务中运行
- propagationNotsupport 不需要事务,如果已经有事务,那么事务会被挂起
- propagation_mandatory 必须运行在事务中,如果没有事务,则抛出一个异常
- propagation_never 不需要事务,如果正有事务在运行,则抛出一个异常
- propagation_nested 如果事务不存在 则和required一样,如果存在,则方法嵌套在事务中运行,并且该事务可独立的提交或回滚
需要事务
- required 如无,则起
- required_new 起一个自己的事务,如已有事务,则挂起
- mandatory 如无,则抛异常
- nested 如无,则起 如有 嵌套事务
不需要事务
- supports 如有 则运行
- not_supports 如有 则挂起
- never 如有 则抛异常