从@Validvalidation中排除一些字段

我使用Spring的@Valid注释来validationbean的字段,这些字段用javax.constraints注释注释。

但是当我需要从validation中排除某些字段时我遇到了问题(仅限某些情况)。

我做了一个调查没有找到任何有用的方法,大多数答案的日期为2010-2011。 令人惊讶的是,这种情况非常普遍。

春季4. +的时间有变化吗? 或者也许任何人都可以分享个人经验如何击败这个?

谢谢。

您可以使用validation组和@Validated注释。

http://www.javacodegeeks.com/2014/08/validation-groups-in-spring-mvc.html中有详细说明。

该方法基于hibernatevalidation器的组 ,它使您能够基于标记接口对validation进行分组,并将其应用于处理程序级别,例如链接中给出的示例

 @RequestMapping(value = "stepTwo", method = RequestMethod.POST) public String stepTwo(@Validated(Account.ValidationStepTwo.class) Account account, Errors errors) { if (errors.hasErrors()) { return VIEW_STEP_TWO; } return "redirect:summary"; }