dw6做网站淘宝网站建设的详细策划
Valid注解配合属性校验注解完成参数校验并且优化参数校验异常处理
- 1 @Valid注解配合属性校验注解完成参数校验
 - 2 优化参数校验异常处理
 
1 @Valid注解配合属性校验注解完成参数校验
向数据库商品分类表中新增商品分类字段,并校验传入的参数
 不使用注解的传统方法:
 
 
使用注解的方法:
 @Valid加在controller层的AddCategoryReq类参数前
 
@Size、@NotNull、@Max加在AddCategoryReq类属性上面
 
 这样,前台通过json传递的数据,通过@RequestBody封装为对象后,@Valid就会校验对象中各个字段是否符合限制。
但现在的问题是,对于不符合限制的异常,都包含在Exception类中,不能具体显示message中的信息
 
 
 

 
2 优化参数校验异常处理
在全局异常处理类中处理这个参数校验异常:MethodArgumentNotValidException
 
 
objectError.getDefaultMessage
 
就可以获得错误信息(属性上面的message定义的)
 并保存到ArrayList中,最后list.toString()返回String类型信息,保存到msg属性中,统一为ApiRestResponse返回对象。
 
 
 

