//实体类
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import lombok.Data;
@Data
public class Entity implements Serializable {
@NotNull(message = "开户流程id不能为空")
private Long id;
}
============================
//@Valid 开启校验
@PostMapping("/hello")
public void hello(@RequestBody @Valid Entity entity) throws Exception {
}
===============
@ControllerAdvice
异常的封装
public class GlobalExceptionHandler {
@ResponseBody
@ExceptionHandler(value = MethodArgumentNotValidException.class)
public ResponseData<String> argumentExceptionHandler(MethodArgumentNotValidException e) {
logger.error("参数异常:", e);
String parameterName = e.getParameter().getParameterName();
for (ObjectError error : e.getBindingResult().getAllErrors()) {
FieldError error1 = (FieldError) error;
String field = error1.getField();
String s = parameterName + "." + field;
String msg = error.getDefaultMessage();
logger.error(msg);
return new ResponseData<String>(ExceptionEnum.PARAMS_ERROR.getCode(), s + ": " + msg);
}
return null;
}
}