代理会计公司网站模版,如何创办公司,注册个小公司要交税吗,网站建设一条龙包括哪些服务简介#xff1a;Spring事务管理和数据库的事务管理的功能作用上是一样的#xff0c;在学习数据库时#xff0c;为了数据完整性#xff0c;采用了事务管理#xff0c;即开启事务、提交事务和管理事务。在SpringBoot框架中添加一个注解 Transactional 就可以将当前方法、类和… 简介Spring事务管理和数据库的事务管理的功能作用上是一样的在学习数据库时为了数据完整性采用了事务管理即开启事务、提交事务和管理事务。在SpringBoot框架中添加一个注解 Transactional 就可以将当前方法、类和接口设置为一个注解。 一、Spring事务管理 1.1 基础知识 注解Transactional 位置业务Service层的方法上、类上、接口上 作用将当前方法、类、接口交给Spring进行事务管理方法执行前开启事务成功执行完毕提交事务出现异常回滚事务 1.2 开启事务管理日志 将下图代码添加到yml的配置文件中 #spring事务管理日志
logging:level:org.springframework.jdbc.support.JdbcTransactionManager: debug 二、事务进阶 2.1 事务属性 1. rollbackFor 默认情况下只有出现 RuntimeException 才会回滚异常。rollbackFor属性用于控制出现何种异常类型回滚事务。 package com.itheima.tliaswebmanagement.exception;import com.itheima.tliaswebmanagement.pojo.Result;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RestControllerAdvice;RestControllerAdvice // 异常类注解
Transactional(rollbackFor Exception.class) //所有异常都要回滚
public class GlobalExceptionHandler {ExceptionHandler(Exception.class) // 定义处理什么种类的注解public Result ex(Exception exception){// 异常打印出来exception.printStackTrace();return Result.error(出现异常请联系管理员);}
}2. propagation传播 事务传播行为指的是当一个事务方法被另一个事务方法调用时这个事务方法应该如何进行事务控制 REQUIRED大部分情况下都是用该传播行为即可。 REQUIRES_NEW当我们不希望事物之间相互影响时可以使用该传播行为。