1、 PROPAGATION_REQURED
表示该方法必须运行在事务中,如果已经存在事务,就在当前事务中运行,如果没有事务,就开启一个新的事务。
2、 PROPAGATION_SUPPORTS
表示当前方法不需要运行在事务中,如果已经存在事务,就在当前事务中运行,如果没有事务,就非事务运行。
3、 PROPAGATION_MANDATORY
表示当前方法必须在事务中运行,如果已经存在事务,就在当前事务中运行,如果不存在事务,就会抛出异常。
4、 PROPAGATION_REQURED_NEW
表示当前方法必须运行在自己的事务中,一个新的事务将会开启。如果存在当前事务,在该方法运行期间,该事务会被挂起。
5、 PROPAGATION_NOT_SUPPORTED
表示当前方法不应该运行在事务中,如果存在当前事务,在方法运行期间,当前事务会被挂起。
6、 PROPAGATION_NEVER
表示当前方法不允许运行在事务中,如果存在当前事务,则会抛出异常。
7、 PROPAGATION_NESTED
表示如果当前已经存在一个事务,那么该方法将会在嵌套事务中运行,如果不存在当前事务,就会按照PROPAGATION_REQURED处理。