Transactional
//default ""
value
//指定事务的限定符值
transactionManager
//传播
Propagation
//支持当前事务,如果不存在,则创建一个新事务。这是事务注释的默认设置。
REQUIRED
//支持当前事务,如果不存在,则执行非事务
SUPPORTS
//支持当前事务,如果不存在则抛出异常
MANDATORY
//创建一个新事务,并挂起当前事务(如果存在)
REQUIRES_NEW
//非事务性地执行,挂起当前事务(如果存在)
NOT_SUPPORTED
//非事务执行,如果存在事务则抛出异常
NEVER
//如果当前事务存在,则在嵌套事务中执行,否则表现为REQUIRED
NESTED
//隔离等级
isolation
//使用基础数据存储的默认隔离级别
DEFAULT
//指示可能发生脏读、不可重复读和幻读的常数。这个级别允许被一个事务更改的行在该行的任何更改被提交之前被另一个事务读取(“脏读”)。如果回滚任何更改,则第二个事务将检索到无效行。
READ_UNCOMMITTED
//指示阻止脏读的常量;可能发生不可重复读和幻读。此级别仅禁止事务读取其中有未提交更改的行。
READ_COMMITTED
//一个常数,指示脏读取和不可重复读取被阻止;可能会出现幻读。该级别禁止事务读取未提交更改的行,还禁止出现这样的情况:一个事务读取一行,第二个事务更改该行,第一个事务重新读取该行,第二次读取时得到不同的值(“不可重复读取”)。
REPEATABLE_READ
//指示脏读、不可重复读和虚读被阻止的常数。该级别包括ISOLATION_REPEATABLE_READ中的禁止,并进一步禁止以下情况:一个事务读取满足where条件的所有行,第二个事务插入满足where条件的行,第一个事务为相同的条件重新读取,在第二次读取中检索额外的“幻影”行。
SERIALIZABLE
//脏读
//不可重复读
//幻读