我使用 Spring 的 @Valid
注释来验证用 javax.constraints
注释注释的 bean 字段。
但是当我需要从验证中排除某些字段时(仅针对某些情况),我遇到了一个问题。
我进行了调查,但没有找到任何有用的方法,而且大多数答案的日期为 2010-2011 年。令人惊讶的是,这种情况如此普遍。
与那时相比,Spring 4.+ 有什么变化吗?或者也许任何人都可以分享个人经验如何战胜它?
谢谢。
最佳答案
您可以使用验证组和@Validated
注解。
在http://www.javacodegeeks.com/2014/08/validation-groups-in-spring-mvc.html里面有详细的解释
该方法基于 hibernate validator's groups它使您能够根据标记界面对验证进行分组并将其应用于处理程序级别,例如链接中给出的示例
@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";
}
关于java - 从@Valid 验证中排除某些字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29798346/