JSR 303@Valid注释可用于验证控制器方法的输入对象,如Mkyong上所示。通用域名格式
是否可以使用@Valid annotation来验证int和long[]等基元类型?如果是,怎么做?
下面是一个Spring MVC方法签名示例,需要验证参数是否大于0:
@RequestMapping(value = { "/delete" }, method = RequestMethod.POST)
ModelAndView deleteBulk(@RequestParam("userId") int userId, @RequestParam("ids") long[] ids) {
如果将@验证放在完整控制器上,则可以验证@RequestParam/@PathVariable简单对象和原语。
如果您不使用spring boot,您应该自己声明MethodValidationPostProcessor
@Bean
public MethodValidationPostProcessor methodValidationPostProcessor() {
return new MethodValidationPostProcessor();
}
不,这不可能。它用于bean验证,如下所述。
我需要测试验证注释,但看起来它们不起作用。我不确定JUnit是否也是正确的。目前,测试将通过,但您可以看到指定的电子邮件地址是错误的。 JUnit 待测试类别
我的设想是: 我有一个带有JSR303验证的pojo类,如下所示: 我的要求是,我想知道哪个特定字段没有通过验证,我想把消息写在“消息”属性中。 目前,我能够跟踪字段名称,但不能跟踪“消息”属性中存在的消息。 我使用以下方法。 我还希望将消息写在注释的属性“消息”中。我怎样才能得到它?有可能这样做吗?
我有一组实体类,它们是由Hibernate工具生成的。都有@列注释,如: 我想编写一个JUnit测试来验证我对数据库的输入,但JUnit验证只在添加以下内容时有效: 我不希望添加任何注释,因为这样我需要更改自动生成的实体类。如何让JUnit测试使用第一个生成的@列注释?谢谢 我的JUnit测试(不适用于仅@列,但适用于额外的@NotNull和@size): 公共类CountryEntityTest
用spring注解Autowering非原语,如下所示
我有一个用Java验证注释注释的模型对象。 根据业务需求,将填充文件名或小时字段,以验证我编写的自定义验证器“CriteriaValidator”。 上面的模型作为方法的输入参数传入,该方法也用@Valid和@ValidCriteria注释。 我的问题是方法中的2个注释。我必须添加@Valid才能检查类中注释的约束。我的自定义验证器仅检查两个字段之一的存在:文件名或小时。 我的问题是,如何使用单个
我想验证属性firstName和lastName。但我不想每次都重复注释。 如何创建自定义注释,使代码如下所示 验证也是一样的