@Transactional注解
@Transactional是spring框架的事务管理,作用是如果业务出现异常可以回滚数据库操作
| 属性 | 描述 |
|---|---|
| value (transactionManager) | 指定使用的事务管理器 |
| propagation | 事务传播行为 |
| isolation | 事务隔离级别 |
| readOnly | 读写或只读事务,默认读写 |
| timeout | 事务超时时间 |
| rollbackFor | 导致事务回滚的异常类数组 |
| rollbackForClassName | 导致事务回滚的异常类名数组 |
| noRollbackFor | 不会导致事务回滚的异常类数组 |
| noRollbackForClassName | 不会导致事务回滚的异常类名数组 |
注意:
@Transactional默认只在不受控异常(RuntimeException和Error)时才进行回滚
当业务中发生了受检查异常(Exception下除了RuntimeException及其子类)时,不会进行回滚