• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

SpringBoot配置GlobalExceptionHandler全局异常处理器案例

springboot 搞代码 4年前 (2022-01-05) 20次浏览 已收录 0个评论

这篇文章主要介绍了SpringBoot配置GlobalExceptionHandler全局异常处理器案例,通过简要的文章说明如何去进行配置以及使用,需要的朋友可以参考下

1. 创建全局异常处理器类GlobalExceptionHandler

@ControllerAdvice: 定义统一的异常处理类,捕获 Controller 层抛出的异常。如果添加 @ResponseBody 返回信息则为JSON格式,这样就不必在每个Controller中逐个定义AOP去拦截处理异常。
@RestControllerAdvice: 相当于 @ControllerAdvice 与 @ResponseBody 的结合体。
@ExceptionHandler: 统一处理一种类的异常,减少代码重复率,降低复杂度。

 @ControllerAdvice public class GlobalExceptionHandler { //@ExceptionHandler 该注解声明异常处理方法,  ModelAndView mv @ExceptionHandler(value = Exception.class) public ModelAndView myHandler(Exception e, HttpServletRequest request, HttpServletResponse response) { System.out.println("GlobalExceptionHandler全局异常处理器捕获"); ModelAndView mv = new ModelAndView(); mv.addObject("message", e.getMessage());         //异常错误信息提示 mv.addObject("url", request.getRequestURI());    //异常请求的url地址 mv.addObject("status", response.getStatus());    //获取状态码 mv.setViewName("/pages/exception/error");    //异常的视图名称 return mv; } }

【注意】基于@ControllerAdvice注解的全局异常统一处理只能针对于Controller层的异常。也就是只能捕获到Controller层的异常,在service层或者其他层面的异常都不能捕获。

2. 创建controller测试出现异常情况

 //测试异常处理 @GetMapping(path = "/exception") public String toException() { System.out.println("toException"); //throw new Exception(); int i =1/0; System.out.println("toException end"); return "/pages/company/company_list"; } 

编写html页面显示错误信息

 <!-- 统一异常处理页面 -->  <title>出现错误啦</title> <div class="content-container"> <div class="head-line"> </div><div class="subheader"> <span />,页面走丢啦<br /><p style="font-size: 16px"> 原因:<font color="red" size="20px"><span /></font><br /> 地址:<span /><br /></p></div><div class="hr"></div><div class="context"> <p>您可以返回上一页重试,或直接向我们反馈错误报告 <br /> 联系地址:String_day<br /> 联系电话:<span>18828886888</span></p></div>

访问错误查看跳转页面

http://localhost:8000/Onli

来源gaodai.ma#com搞##代!^码@网

neMall/page/exception

以上就是SpringBoot配置GlobalExceptionHandler全局异常处理器案例的详细内容,更多请关注gaodaima搞代码网其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:SpringBoot配置GlobalExceptionHandler全局异常处理器案例

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址