在要开启事务的方法上使用@Transactional
注解即可!
我们知道 Exception 分为运行时异常 RuntimeException 和非运行时异常。在@Transactional
注解中如果不配置rollbackFor
属性,那么事物只会在遇到RuntimeException
的时候才会回滚,加上rollbackFor=Exception.class
,可以让事物在遇到非运行时异常时也回滚。@Transactional
注解一般用在可以作用在类
或者方法
上。
- 作用于类:当把
@Transactional 注解放在类上时,表示所有该类的
public 方法都配置相同的事务属性信息。 - 作用于方法:当类配置了
@Transactional
,方法也配置了@Transactional
,方法的事务会覆盖类的事务配置信息。