事务
声明式事务的五大属性 1.传播机制(propagation) 指的是一个带有事务的方法A运行在另一个带有事务的方法B内部时,内层方法A是使用自己的事务还 是使用外层B的事务 required:默认值,表示如果外层方法B有事务,就使用外层方法B的事务,没有就使用自己的事务 requires_new:无论外层方法B有没有事务,内层方法A都使用自己的事务 supports:表示如果外层方法B有事务,就使用外层方法B的事务,如果外层方法B没有事务,就不使用事务 2.隔离级别(isolation):是针对数据库的并发访问的,不同的隔离级别,数据库有着不同的解决方法。 repeatable_read: 默认是 可重复度 read_uncommitted:读未提交 read_committed:读已提交 serializable:串行化读:就是如果设置了这个注解,运行期间就不允许改变值 也就是不允许并发操作。 3.回滚机制 通常只有运行时异常会自动回滚,编译时异常不会回滚,想要让其回滚只有设置rollbackFor rollbackFor ={一个异常类的字节码} 就是在事务后面的参数列表里面加上 一个异常类的字节码,当你下面遇到这样的异常时 会回滚 no rollbackFor 就是即使是运行时异常,后面如果不想让其回滚,就在事务后加上norollbackFor={运行时异常的类字节码}