前台返回参数
{"code":"", "msg":"", "data":"" }1. 定义一个最外层的类
@Data public class Result<T> { //错误码 private Integer code; // 提示信息 private String msg; // 具体内容 private T data; }2. 定义一个工具类
public static Result success(Object o) { Result result = new Result(); result.setCode(0); result.setMsg("成功"); result.setData(o); return result; } public static Result success() { return success(null); } public static Result error(Integer code, String msg) { Result result = new Result(); result.setCode(code); result.setMsg("msg"); return result; }3. 自定义一个异常类
@Data public class MyException extends RuntimeException { // 要继承RuntimeException而不是Exception, 因为spring框架只对RuntimeException才会回滚 private Integer code; public MyException(ResultEnum resultEnum) { // 这里注意下 super(resultEnum.getMsg()); this.code = resultEnum.getCode(); } }4. 定义一个枚举类
@Getter public enum ResultEnum { SUCCESS(0, "成功"), UNKNOWN_ERROR(-1, "id小于10"), ; private Integer code; private String msg; ResultEnum(Integer code, String msg) { this.code = code; this.msg = msg; } }5. 测试搞定收工 public void getMyException(Integer id) throws Exception { if (id < 10) { throw new MyException(ResultEnum.UNKNOWN_ERROR); } }引入了lombok插件
