java - 使用 JSR-303 进行方法参数验证

标签 java spring bean-validation

JSR-303 是否也用于方法参数验证?

如果是这样,网络上是否有任何示例?我面临的最大挑战是如何在每种方法中获取 validator 。使用 Spring 3,这是否意味着我必须用 LocalValidatorFactoryBean 注入(inject)几乎每个类?

谢谢!

最佳答案

JSR 303 的引用实现 Hibernate Validator 即将发布的 4.2 版将支持方法级验证。

正如在上一个答案中所指出的,这将允许在方法参数中指定约束注释(内置以及自定义类型),并返回值来指定方法调用的前置条件和后置条件。

请注意,HV 只会处理方法调用的实际验证,而不是触发此类验证。验证调用可以使用 AOP 或其他方法拦截工具(如 JDK 的动态代理)来完成。

此问题的 JIRA 问题是 HV-347 [1],因此您可能希望将自己添加为此问题的观察者。

[1] http://opensource.atlassian.com/projects/hibernate/browse/HV-347

关于java - 使用 JSR-303 进行方法参数验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4424858/

相关文章:

java - GWT:ListEditor 错误地尝试验证从列表中删除的实体

java - 如何从传出拦截器的消息中获取 REST 服务的响应负载?

java - 我们可以使用 JMX 进行警报/通知吗

java - 在 Spring MVC 中,当 "get by id"找不到项目时,如何优雅地处理 Validate.notNull IllegalArgumentException?

Spring MVC 和多部分处理

xml - spring xml 中的默认占位符值

java - Spring - 如何验证 DTO/POJO 中 byte[] 中元素的最小/最大值?

java - 如何强制 Hibernate Validator 递归(级联)验证字段?

java - 从 SpellCheckerService 将单词添加到自定义词典中

java - Spring容器是如何创建的?