第一步

在配置类中加上@EnableTransactionManagement注解来开启 Spring 对事务的管理
image.png

第二步

在对应事务的方法或者类上加上注解@Transactional表明这是一个Spring事务
之后如果该事务运行过程中出现了异常,那么就会进行回滚,不会对数据库中的数据进行修改
image.png

声明式事务管理的参数配置

@Transactional注解可以进行一定的配置,可以针对事务进行配置相关的参数
image.png

propagation 事务传播行为

ioslation 事务隔离级别

timeout 超时时间

  1. 事务需要在一定时间内进行提交,如果不提交就进行回滚
  2. 默认值是 -1 ,设置时间以秒进行计算

    readOnly 是否只读

  3. 读:查询操作
    写:添加、修改和删除操作

  4. 默认值是 false 表示可以查询,也可以添加修改删除操作
  5. 如果设置成true,那么就只能进行读,也就是查询操作

    rollbackFor

  6. 设置查询哪些异常进行事务的回滚

image.png

noRollbackFor

  1. 设置出现哪些异常不进行事务回滚