改进了 输入参数的验证(全局)
一、GlobalExceptionHandler类添加
@ExceptionHandler(MethodArgumentNotValidException.class)
@ResponseBody
public ResultVO handlerException1(MethodArgumentNotValidException e) {
log.error("【参数】{}", e);
List list = new ArrayList();
List<ObjectError> allErrors = e.getBindingResult().getAllErrors();
for (int i = 0; i < allErrors.size(); i++) {
String s = allErrors.get(i).getCodes()[0];
String[] parts = s.split("\\."); //用分割的方法得到字段名
String part1 = parts[ parts.length-1];
list.add(part1+":"+allErrors.get(i).getDefaultMessage());
}
return ResultVOUtil.error(2, list.toString());
}
二、vo类添加
@NotNull(message = "cityid为空") private String cityid; @NotNull(message = "month1为空") @Min(value = 20, message = "不能小于20") private Integer month1;
三、controller中添加@Valid
@PostMapping("xxx") @ApiOperation(value = "",notes = "") public ResultVO insertBPCountLimit(@Valid @RequestBody xxx xxx){ return ResultVOUtil.success("success"); }