Springboot异常错误处理解决方案详解-创新互联
1.在有模板引擎的情况下:
目前创新互联已为千余家的企业提供了网站建设、域名、网站空间、网站托管运营、企业网站设计、汝阳网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。springboot会默认找 templates/error/错误状态码.html,所以我们要定制化错误页面就可以到templates/error下创建一个【对应错误状态码.html】html文件,当发生此状态码的错误springboot就会来到对应的页面。
同时如果我们想让400-499之间的错误都去同一个错误页面,那我们可以在templates/error下创建一个4xx.html。同理500-599的错误可以用5xx.html。
注意:springboot会优先匹配具体的【错误状态码.html】,然后再匹配4xx,5xx的。例如:发生了404错误,springboot优先到templates/error下找404.html,如果没有404.html,再找有没有4xx.html,有的话就会使用4xx.html。
在错误页面我们能够获取到的信息:
- timestamp:时间戳
- status:状态码
- error:错误提示
- exception:异常对象 springboot2.1.6在页面获取异常对象要现在全局配置文件中加入:server.error.include-exception=true
- message:异常消息
- errors:JSR数据校验的错误
2.在没有模板引擎(模板引擎找不到这个错误页面)的情况下,springboot会到静态资源文件夹下的error包下找。
3.以上都没有找到错误页面,就默认用springboot默认的错误提示页面
错误异常处理——自定义响应json数据
上边的错误处理中,如果是浏览器访问可以响应我们自己定制的错误页面,但是如果是其他客户端访问,则只会响应固定的json数据,如下图所示:
下边讲解三个异常处理返回自定义json数据的方式
首先编写一个自定义异常类
public class UserNotExitException extends RuntimeException { public UserNotExitException() { super("用户不存在"); } }
标题名称:Springboot异常错误处理解决方案详解-创新互联
标题URL:http://ybzwz.com/article/csdpch.html