springboot rest controller 统一异常处理,ajax 形式
2018-08-16 11:42
851 查看
1. 建立 json 结果类,用于统一显示 json 结果
[code]public class JsonResult<T> { // code=0表示成功,返回数据data。data!=0,表示错误,返回错误信息msg private int code; // 若有错误,data不生成json @JsonInclude(JsonInclude.Include.NON_NULL) private T data; // 若无错误,msg 不生成 json @JsonInclude(JsonInclude.Include.NON_NULL) private String msg; public JsonResult() { code = 0; } public JsonResult<T> ok(T data) { this.code = 0; this.data = data; return this; } public JsonResult<T> error(int code, String msg) { this.code = code; this.msg = msg; return this; } // getter and setter }
2. 建立自定义异常类,用于显示自定义的异常
[code]public class CustemerException extends Exception { public CustemerException(String message) { super(message); } }
3. 建立 rest controller 的异常抓捕类
[code]@RestControllerAdvice public class JsonExceptionHandler { @ExceptionHandler(value = Exception.class) public JsonResult<String> resolveException(HttpServletRequest request, HttpServletResponse response, Exception e) { JsonResult<String> result = new JsonResult<>(); return result.error(1, e.getMessage()); } }
4. 在 rest controller的方法中抛出异常
[code]@RestController public class TestController { @RequestMapping("/test_error") public Object testError() throws Exception { if (true) { throw new CustemerException("抛出自定义异常"); } return 1; } }
5. 测试,运行项目,打开浏览器输入url
相关文章推荐
- STS创建Spring Boot项目实战(Rest接口、数据库、用户认证、分布式Token JWT、Redis操作、日志和统一异常处理)
- SpringBoot 统一异常处理--- @ControllerAdvice 使用
- STS创建Spring Boot项目实战(Rest接口、数据库、用户认证、分布式Token JWT、Redis操作、日志和统一异常处理)
- STS创建Spring Boot项目实战(Rest接口、数据库、用户认证、分布式Token JWT、Redis操作、日志和统一异常处理)
- springboot集中处理controller层的异常(有关@ControllerAdvice的用法)
- SpringBoot初始教程之统一异常处理(三)
- java基础(六):springboot统一异常处理
- Spring中@ControllerAdvice注解配合@ExceptionHandler实现统一异常处理
- Spring Boot中Web应用的统一异常处理
- Spring Boot中Web应用的统一异常处理
- SpringBoot进阶之统一异常处理(含源码)
- SpringBoot 统一异常处理
- spring boot通过Interceptor和HandlerMethodReturnValueHandler实现统一处理为controller返回对象统计处理时间
- springboot + shiro 权限注解、统一异常处理、请求乱码解决
- SpringSecurity中密码加盐与SpringBoot中异常统一处理
- Spring Boot中Web应用的统一异常处理
- Spring Cloud Spring Boot mybatis分布式微服务云架构(十一)Web应用的统一异常处理
- Spring Boot中Web应用的统一异常处理
- springboot 统一异常处理
- spring-boot统一处理返回给前台的数据格式(避免返回异常堆栈信息,干扰用户体验)