Springboot2.0处理自定义异常并返回json
这篇文章主要介绍了Springboot2.0处理自定义异常并返回json,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
1.编写自定义异常类
packagecn.jfjb.crud.exception; /** *@authorjohn *@date2019/11/24-9:48 */ publicclassUserNotExistExceptionextendsRuntimeException{ publicUserNotExistException(){ super("用户不存在"); } }
2.处理自测试异常
packagecn.jfjb.crud.handler; importcn.jfjb.crud.exception.UserNotExistException; importorg.springframework.web.bind.annotation.ControllerAdvice; importorg.springframework.web.bind.annotation.ExceptionHandler; importorg.springframework.web.bind.annotation.ResponseBody; importjava.util.HashMap; importjava.util.Map; /** *@authorjohn *@date2019/11/24-10:43 */ @ControllerAdvice publicclassMyExceptionHandler{ @ResponseBody @ExceptionHandler(UserNotExistException.class) publicMaphandleException(Exceptione){ Map map=newHashMap<>(); map.put("code","user.notexist"); map.put("message",e.getMessage()); returnmap; } }
3.配置application.yml文件(不配置的话无法获取exception)
server: error: include-exception:true
4.编写测试
packagecn.jfjb.crud.controller; importcn.jfjb.crud.exception.UserNotExistException; importorg.springframework.stereotype.Controller; importorg.springframework.web.bind.annotation.RequestMapping; importorg.springframework.web.bind.annotation.RequestParam; /** *@authorjohn *@date2019/11/22-19:38 */ @Controller publicclassHelloController{ @RequestMapping({"/testException"}) publicStringtestException(@RequestParam("user")Stringuser){ if(user!="aaa"){ thrownewUserNotExistException(); } return"index"; } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。