JSR 303 @Valid注释可用于验证控制器方法的输入对象,如所示on Mkyong.com
是否可以使用@Valid注释来验证基本类型,如int和long []?如果是这样,怎么样?
这是一个示例Spring MVC方法签名,需要验证参数是否高于0:
@RequestMapping(value = { "/delete" }, method = RequestMethod.POST)
ModelAndView deleteBulk(@RequestParam("userId") int userId, @RequestParam("ids") long[] ids) {
答案 0 :(得分:1)
不,它无法完成。这是针对 bean 验证的,如here所述。
答案 1 :(得分:1)
如果将 @Validated放在完整的控制器上,则可以验证@ RequestParam / @ PathVariable简单对象和基元。
如果您不使用spring-boot,则应自行声明MethodValidationPostProcessor
@Bean
public MethodValidationPostProcessor methodValidationPostProcessor() {
return new MethodValidationPostProcessor();
}