Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Spring和JSR303验证。如何仅验证某些属性?_Java_Spring Mvc_Bean Validation - Fatal编程技术网

Java Spring和JSR303验证。如何仅验证某些属性?

Java Spring和JSR303验证。如何仅验证某些属性?,java,spring-mvc,bean-validation,Java,Spring Mvc,Bean Validation,假设我们有一张报名表。当表单的某些输入发生更改时,我希望通过使用对服务器的ajax调用来动态验证其值。使用JSR303验证是否有机会只验证bean的某些特定属性 注册表单处理程序可以很好地验证收到的bean,但是我想在提交整个bean之前找到检查属性的方法 直接的方法只是创建一个服务器端方法来接收属性名称和值,并基于名称检查值,但我希望有一种方法可以使用已经定义的bean约束 例如,用户输入电子邮件地址并向前移动到下一个属性。客户端进行调用,服务器方法检查提供的电子邮件是否已经存在。如果是这样,

假设我们有一张报名表。当表单的某些输入发生更改时,我希望通过使用对服务器的ajax调用来动态验证其值。使用JSR303验证是否有机会只验证bean的某些特定属性

注册表单处理程序可以很好地验证收到的bean,但是我想在提交整个bean之前找到检查属性的方法

直接的方法只是创建一个服务器端方法来接收属性名称和值,并基于名称检查值,但我希望有一种方法可以使用已经定义的bean约束

例如,用户输入电子邮件地址并向前移动到下一个属性。客户端进行调用,服务器方法检查提供的电子邮件是否已经存在。如果是这样,它会返回一个错误,我会在客户端显示它。我相信这会使注册过程更加灵活和方便

非常感谢您的评论。

jsr-303确实有一个方法,可以验证一个属性:

<T> java.util.Set<ConstraintViolation<T>> validateProperty(T object,
                                                           java.lang.String propertyName,
                                                           java.lang.Class<?>... groups)
java.util.Set validateProperty(T对象,
java.lang.String propertyName,
java.lang.Class…组)
您只需要注入验证器,以便直接使用它,而不是依赖Spring通过在方法参数上放置@Valid来自动调用它