1、定制错误页面
1)有模板引擎的情况下在templates文件夹下创建error文件夹,然后定制相应错误的页面(页面命名为:错误状态码.html 如404。html)如果页面命名为4xx那么以4开头的错误全部进这个页面,5xx同理。有精确的错误还是回去相应的精准的页面。
2)模板引擎下找不到,去静态资源文件夹下找。
3)以上都没有,就去默认的提示页面
2、定制错误数据
@RestController
@ControllerAdvice
public class ExceptionController {
//发生相应的错误返回相应的数据
@ExceptionHandler(Exception.class)
public HashMap<String, Object> handleAllExceptions(Exception e) {
HashMap<String, Object> resultMsg=new HashMap<String, Object>();
resultMsg.put("code", 404);
resultMsg.put("msg", "找不到页面");
return resultMsg;
}
}
以上代码没有自适应效果(浏览器返回错误页面,客户端返回json数据),这里不管是客户端,还是浏览器都是返回json数据。
网友评论