Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/332.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-validtion-在第一次验证失败时取消对字段的其他验证_Java_Validation_Spring Mvc - Fatal编程技术网

java-spring-validtion-在第一次验证失败时取消对字段的其他验证

java-spring-validtion-在第一次验证失败时取消对字段的其他验证,java,validation,spring-mvc,Java,Validation,Spring Mvc,我正在开发一个JavaSpringMVC应用程序。我有一个模型,在一个字段的顶部设置了两个验证注释。下面是一个代码示例: public class MyModel{ @NotBlank(message = "This field can not be blank") @NationalCode(message = "Invalid national code") private String name; .... } 当我将name留空并提交表单时,错误验证数组有

我正在开发一个JavaSpringMVC应用程序。我有一个模型,在一个字段的顶部设置了两个验证注释。下面是一个代码示例:

public class MyModel{

   @NotBlank(message = "This field can not be blank")
   @NationalCode(message = "Invalid national code")
   private String name;

   ....

}
当我将
name
留空并提交表单时,错误验证数组有两个成员:

name => This field can not be blank
name => Invalid national code

但是,我不想要第二条线。事实上,我想当一个字段的第一次验证失败时,该字段上的所有其他验证都将停止执行。我如何才能做到这一点?

这里缺少的是由提供的分组功能。您需要定义逻辑组,以便只显示由属于给定组的注释生成的任何错误消息。有关更多信息,请参阅

简而言之,定义自己的标记接口,例如,
NotBlankGroup
,并将此接口类添加到
@NotBlank
注释中

@NotBlank(message = "This field can not be blank", groups = NotBlankGroup.class)
因此,只有当
名称
字段值为空时,才能在
@NotBlank
中获取消息

稍后,如果您希望添加
@NationalCode
或其他自定义或预定义注释,您可以轻松地将
NotBlankGroup
添加到具有
组的其他注释中,以便将所有注释作为一个组进行评估