统一返回格式
返回类
package com.jimo.utils;
public class Result<T> {
private Integer code;
private String msg;
private T data;
public Integer getCode() {
return code;
}
public void setCode(Integer code) {
this.code = code;
}
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
public T getData() {
return data;
}
public void setData(T data) {
this.data = data;
}
}
工具类
package com.jimo.utils;
public class ResultHelper {
public static Result<Object> success(Object obj) {
Result<Object> re = new Result<>();
re.setCode(0);// 假设成功为0
re.setMsg("OK");
re.setData(obj);
return re;
}
public static Result<Object> success() {
Result<Object> re = new Result<>();
re.setCode(0);// 假设成功为0
re.setMsg("OK");
re.setData(null);
return re;
}
public static Result<Object> error(Integer code, String msg) {
Result<Object> re = new Result<>();
re.setCode(code);
re.setMsg(msg);
re.setData(null);
return re;
}
}
使用
然后在menAdd里使用:
原来:
@PostMapping("/addMen")
public Men addOneMen(@Valid Men men, BindingResult br) {
if (br.hasErrors()) {
System.out.println(br.getAllErrors().toString());
return null;
}
return mp.save(men);
}
现在:
@PostMapping("/addMen")
public Result<Object> addOneMen(@Valid Men men, BindingResult br) {
if (br.hasErrors()) {
return ResultHelper.error(1, br.getAllErrors().toString());
}
return ResultHelper.success(mp.save(men));
}
结果:
{
"code": 1,
"msg": "[Field error in object 'men' on field 'age': rejected value [17]; codes [Min.men.age,Min.age,Min.java.lang.Integer,Min]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [men.age,age]; arguments []; default message [age],18]; default message [未成年禁止入内]]",
"data": null
}
{
"code": 0,
"msg": "OK",
"data": {
"id": 4,
"name": "lily12",
"age": 20
}
}