为了账号安全,请及时绑定邮箱和手机立即绑定

返回null空指针异常捕获不到,直接报错没有logger提示

postman返回这个格式,不是应该出现的-1,控制台也没有打印【系统异常】这几个字

{

    "timestamp": "2018-10-09T12:02:04.961+0000",

    "status": 500,

    "error": "Internal Server Error",

    "message": "No message available",

    "path": "/girls"

}


正在回答

3 回答

下面的是我写的异常处理类

有两点你需要注意看下

    1.@ExceptionHandler注解填的是Exception.class吗?

    2.else分支这里有没有作以处理,再者说了,这里总返回的是Result对象,你前台怎么可能会展现别的格式呢,说明你并没有返回Result对象,你可以试着用debug启动项目,然后打断点跟着程序看看

@ExceptionHandler(Exception.class)
@ResponseBody
public Result girlHandle(Exception e){
if(e instanceof GirlException){
GirlException ge=(GirlException)e;
log.info(ge.getMessage(),ge);
return ResultUtil.error(ge.getCode(), ge.getMessage());
}else{
//因为错误捕获,所以后台没有报错,这里我们通过日志将其打印出来,以便排错
log.info("【系统发生错误】",e);
return ResultUtil.error(-1, "系统发生了错误,请稍后再试,或联系管理员");
}
}

https://img1.sycdn.imooc.com//5bc0738f0001cad007810276.jpg

0 回复 有任何疑惑可以回复我~
#1

慕粉2137351520 提问者

谢谢,我异常处理类值是GirlException类了,没改成Exception类。学习了再次感谢!
2018-10-12 回复 有任何疑惑可以回复我~

谢谢,我异常处理类值是GirlException类了,没改成Exception类。学习了再次感谢!

0 回复 有任何疑惑可以回复我~

你这是后台报错了,而不是抛出异常,如果是抛出异常了才会打印系统异常,你看看是不是代码写的有错误

0 回复 有任何疑惑可以回复我~
#1

慕粉2137351520 提问者

后台报错不会抛出异常吗
2018-10-10 回复 有任何疑惑可以回复我~
#2

慕粉4135521

别给人家胡说NullPointException不就是抛出的异常么
2018-10-12 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

返回null空指针异常捕获不到,直接报错没有logger提示

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信