10.java 异常处理,事务管理,事务共用,事务传递
Java使用汇总
- Java-IDEA
- Java-Maven,依赖管理,私服 https://www.cnblogs.com/chenshaojun2008/p/17493632.html
- Java-IOC&DI
- Java-Mybatis连接池,动态sql https://www.cnblogs.com/chenshaojun2008/p/17496913.html
- Java-文件上传(本地和OSS)
- Java-登录校验JWT,过滤器,拦截器使用总结 https://www.cnblogs.com/chenshaojun2008/p/17500546.html
- Java-事务管理 https://www.cnblogs.com/chenshaojun2008/p/17500949.html
- Java-AOP https://www.cnblogs.com/chenshaojun2008/p/17501255.html
- IDEA 有用的插件使用汇总 记录 https://www.cnblogs.com/chenshaojun2008/p/17500940.html
10.异常处理,事务管理,事务共用,事务传递 https://www.cnblogs.com/chenshaojun2008/p/17500949.html
10.异常处理,事务管理,事务共用,事务传递
1.在每个controller 添加try catch
2.定义全局异常处理器
/**
* 全局异常处理器
*/
@RestControllerAdvice
public class GlobalExceptionHandler {
@ExceptionHandler(Exception.class)//捕获所有异常
public Result ex(Exception ex){
ex.printStackTrace();
return Result.error("对不起,操作失败,请联系管理员");
}
}
- 事务处理
事务是一组操作的集合,要么都操作成功,要都失败。
3.1操作:
1.开启事务:start transaction/begin
2.提交事务:commit
3.回滚事务:rollback
3.2 @Transactional: spring 事务关联,事务可以作用在类上,也可以作用在方法上
3.3 #spring 事务管理日志 配置 application.xml
logging:
level:
org.springframework.jdbc.support.JdbcTransactionManager:dubug
3.4 事务管理:
1.事务进阶:
rollbackFor: 对所有异常回滚
propagation:事务传递配置项
运行时 异常才会回滚
3.5.rollbackFor=Exception.class;Propagation.REQUIRES;Propagation.REQUIRES_NEW 的区别
@Transactional(rollbackFor=Exception.class) //但配置了这个,对所有异常回滚:
@Transactional(propagation = Propagation.REQUIRES) //但配置了这个,会共用上下方法的同一个事务:默认的
@Transactional(propagation = Propagation.REQUIRES_NEW) //但配置了这个,会开启新的事务:
@Override
public void delete(Integer id) {
deptMapper.deleteById(id);
}
方法都添加事务 @Transactional,默认是共享同一个事务:@Transactional(propagation =ropagation.REQUIRES)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
2021-06-24 .net 5 源码 解读
2021-06-24 编程哪些事儿?从普通开发到架构师,补齐短板