我有四个数据字段,我必须确保我收到四个中至少两个字段的数据。我正在使用spring 3 mvc,我想知道如果我们在spring中有任何注释可用于将这个非空逻辑分组到四个字段中。
答案 0 :(得分:0)
是的,您可以通过Hibernate Validator的注释@NotEmpty执行此操作,它会将值检查为not null
和size is > 0
此注释在bean的字段中给出,您需要将其作为必填字段。
在客户端,如果您使用的是Spring表单标记,那么将表单字段映射到Bean字段的属性modelattribute=BeanName
。
在控制器端,您需要在继续进行之前验证此bean,为此您需要在控制器中的bean对象参数之前包含@valid
注释,如下所示
public String submitForm(@Valid MyBean myBean, BindingResult result, Model m)
{
if(result.hasErrors()) {
return "formPage"; //return to error page or display error on client side
}
m.addAttribute("message", "Successfully saved form: ");
return "formPage";
}
result.hasErrors()
如果在bean类中按照验证定义的字段值无效,则返回true。如果所有值都正确,则返回false。
以下是Validate Form fields in Spring MVC的完整示例。
答案 1 :(得分:0)
这可以通过在spring中创建自定义验证器注释来实现