springboot修改错误404,500页面,并且自定义异常

首先看一个类:

basicErrorController.class

第一springboot会判断请求头里面有没有text/html (如果包含的话 那么是Browser 请求) 所以放回的是页面 ;

如果请求头里面没有text/html 那么就有是手机端发送来的请求 ,那么我们就返回一个json串(很明显 添加了@ResponseBady注解) 。

我们怎么修改Bowser发送了错误的请求呢?  直接在resources下面创建resources/error 里面创建 404  或者 500 以状态码命名 

 

 

在页面里面就可以自定义我们想要的格式 了 

那么在移动端呢? 

我们知道移动端只会放回json串 

好我们做处理:

为了 达到移动端请求我们用 PostMan软件做出测试:

1.先说特殊的404捕获 :

我们404通过ExceptionHandler这一种不容易解决,我们单独拿出来解决  

写一个类实现了ErrorController ,


@Controller
public class NotFoundExcption implements ErrorController {


    @Override
    public String getErrorPath() {
        return "/error";
    }


    @RequestMapping("/error")
    @ResponseBody
    public  Object  error(){
        Map<String, Object> map = new HashMap<>();
        map.put("error", "not found");
        map.put("code", "404");
        return map;
    }


}

实现了ErrorController  

并且覆盖了内部的/error请求路径这样的话,很明显这样缺点很多(暂时就这样)

2.我们自定义异常:

举个栗子

 

上图是抛出我们的自己的异常 那么我定义异常

这个message一定给父类 ,这个是基于springmvc的机制

(如果我们不处理这个异常类的话 那么我们的message就会给前端展示出来)

我们开始处理异常

有三个点 就是@ControllerAdvice   @ExceptionHandler(UserControllerExption.class)   @ResponseBady 就有就可以 了 

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值