浅谈JAVA在项目中如何自定义异常
更新时间:2021年06月29日 11:59:26 作者:L1569850979
今天给大家带来的是关于Java的相关知识,文章围绕着JAVA在项目中如何自定义异常展开,文中有非常详细的介绍及代码示例,需要的朋友可以参考下
JAVA项目中自定义异常
1.数据返回处理类
@Data public class R<T> implements Serializable { private static final long serialVersionUID = -8497670085742879369L; @ApiModelProperty(value = "返回码", example = "200") private Integer code=200; @ApiModelProperty(value = "返回消息", example = "") private String message="SUCCESS"; @ApiModelProperty(value = "返回数据", example = "") private T data; private R() { } public R(T data) { this.data = data; } public R(Integer code,String message) { this.code=code; this.message = message; } }
2.新建自定义异常
@Data @AllArgsConstructor @NoArgsConstructor public class GuliException extends RuntimeException{ private Integer code; private String msg; }
3.定义异常处理
@ControllerAdvice public class GlobalExceptionHandler { //指定出现什么异常执行这个方法 @ExceptionHandler(GuliException.class) @ResponseBody //返回数据 public R error(GuliException e){ e.printStackTrace(); return new R(e.getCode(),e.getMsg()); } }
4.不使用异常处理示例
@GetMapping("/testError") @ApiOperation(value = "测试异常处理") public R<UserVO> testError(@RequestParam("id") String id){ UserVO userVO=new UserVO(); SysUser byId = sysUserService.getById(id); BeanUtils.copyProperties(byId,userVO); return new R<>(userVO); }
执行结果
使用自定义异常
@GetMapping("/testCheck") @ApiOperation(value = "测试返回值正常处理") public R<Boolean> testCheck(){ try { int i=10/0; }catch (Exception e){ e.printStackTrace(); throw new GuliException(1001,"错误测试"); } return new R<>(true); }
执行结果
到此这篇关于浅谈JAVA在项目中如何自定义异常的文章就介绍到这了,更多相关JAVA自定义异常内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
SpringSecurity框架下实现CSRF跨站攻击防御的方法
CSRF是一种网络攻击方式,也可以说是一种安全漏洞,这种安全漏洞在web开发中广泛存在。这篇文章主要介绍了SpringSecurity框架下实现CSRF跨站攻击防御,需要的朋友可以参考下2019-12-12SpringCloud feign微服务调用之间的异常处理方式
这篇文章主要介绍了SpringCloud feign微服务调用之间的异常处理方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-06-06从零开始让你的Spring Boot项目跑在Linux服务器
这篇文章主要给大家介绍了如何从零开始让你的Spring Boot项目跑在Linux服务器的相关资料,由于springboot是内嵌了tomcat,所以可以直接将项目打包上传至服务器上,需要的朋友可以参考下2021-11-11Struts2源码分析之ParametersInterceptor拦截器
这篇文章主要介绍了Struts2源码分析之ParametersInterceptor拦截器,ParametersInterceptor拦截器其主要功能是把ActionContext中的请求参数设置到ValueStack中,,需要的朋友可以参考下2019-06-06
最新评论