vs 启动调用的目标发生异常_SpringBoot2.0实战(9)全局异常处理统一输出格式

c1a2d10fa358070a95b7141e8a3ed177.png

课程目标

对 SpringBoot 项目中的所有异常进行响应,处理成统一的格式输出。

操作步骤

添加依赖

添加 spring-boot-starter-web 的依赖

29d67ace871707d804f433edce917abd.png

编码

构建统一输出类,作为项目所有接口的输出对象

766ccda1139f23e346116884710255f7.png

编写异常处理器

  • 类上添加 @RestControllerAdvice 注解,是 @ResponseBody 与 @ControllerAdvice 的结合,其中 @ControllerAdvice 用于注册异常处理器,而 @ResponseBody 用于标记该类中所有方法返回类型为 JSON。
  • 方法上添加 @ExceptionHandler 注解,用于标记该方法用于处理何种异常。
  • 该类中可以同时编写多个方法,用于处理多种异常,Spring 会自行根据异常类型选择执行相应的方法。
0c97868fc1316ac1092f4e604be9d402.png

编写接口

ccd14a27ab03eaafc3f6ec9a913c12ba.png

编写项目启动类

61c752dc23e199ad873d9311127d714b.png

验证结果

编写测试用例

d558808b991ecaaaee6021f7bd90e245.png

调用测试用例可以看到输出

85044a539120069fdf07c3e854dc1471.png

源码地址

本章源码 : https://gitee.com/gongm_24/spring-boot-tutorial.git

总结

通过全局异常处理,可以保证系统在出现异常的情况下,出参结构是统一的,结合接口正常情况下的返回结构,就可以保证整个系统的出参结构一致,这种方式不管是跟前端交互还是跟其它系统交互,都很重要。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值