springboot事物注解使用
时间: 2023-10-14 18:03:11 浏览: 101
springboot注解
在 Spring Boot 中,可以使用注解来管理事务,常用的注解有:
1. @Transactional:用于标记方法或类,表示该方法或类需要进行事务管理。
2. @Transactional(propagation = Propagation.REQUIRED):表示当前方法必须在事务内执行,如果当前没有事务,就新建一个事务;否则就加入到当前事务中。
3. @Transactional(propagation = Propagation.NOT_SUPPORTED):表示当前方法不应该在事务内执行,如果当前存在事务,就将事务挂起,执行完当前方法后再恢复事务。
4. @Transactional(propagation = Propagation.REQUIRES_NEW):表示当前方法必须在新的事务内执行,如果当前存在事务,就将事务挂起,新建一个事务来执行当前方法。
5. @Transactional(propagation = Propagation.NEVER):表示当前方法不应该在事务内执行,如果当前存在事务,就抛出异常。
6. @Transactional(propagation = Propagation.MANDATORY):表示当前方法必须在事务内执行,如果当前没有事务,就抛出异常。
7. @Transactional(readOnly = true):表示当前方法是只读的,不会对数据库进行修改操作,可以提高性能。
8. @Transactional(timeout = 10):表示当前方法的事务超时时间为10秒,如果在规定时间内没有完成事务,就会回滚。
需要注意的是,在使用事务注解时,需要在配置类上使用@EnableTransactionManagement注解开启事务管理。
阅读全文