4

JSR 303 @Valid 注解可用于验证控制器方法的输入对象,如Mkyong.com 上所示

是否可以使用@Valid 注解来验证 int 和 long[] 等原始类型?如果是这样,怎么做?

这是一个示例 Spring MVC 方法签名,需要验证参数是否高于 0:

@RequestMapping(value = { "/delete" }, method = RequestMethod.POST)
ModelAndView deleteBulk(@RequestParam("userId") int userId, @RequestParam("ids") long[] ids) {
4

2 回答 2

3

不,这做不到。它用于bean验证,如此所述。

于 2013-05-18T07:06:49.457 回答
1

您可以验证 @RequestParam/@PathVariable 简单对象和原语,如果将@Validated 放在完整控制器上

而且如果你不使用spring-boot,你应该自己声明MethodValidationPostProcessor

@Bean
public MethodValidationPostProcessor methodValidationPostProcessor() {
    return new MethodValidationPostProcessor();
}
于 2020-04-14T08:02:59.733 回答