通常验证前端传参的ro对象中某个参数是否为空,可以使用@Validated、@Valid注解,配合ro对象中的@NotNull、@NotBlank、@NotEmpty注解即可。
但是验证一个集合对象(比如List对象中某些元素是否为空时),之前的办法会失效。
解决办法:
1、自定义一个ValidLIst类,实现List接口,并且new一个私有的LinkedLIst,并使用@Valid注解修饰。通过这个私有的LinkedLIst重写所有List接口的方法。
2、在Controller类中,对应的public方法上加上@Validated注解,方法参数前加上@Valid注解,方法参数的List改为自己封装的ValidList即可。
ValidList类:
Controller方法:
网友评论