Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/27.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 基于封闭类类型的条件JSR-303验证_Java_Spring_Validation - Fatal编程技术网

Java 基于封闭类类型的条件JSR-303验证

Java 基于封闭类类型的条件JSR-303验证,java,spring,validation,Java,Spring,Validation,如何根据给定bean包含在哪个类中更改验证规则? 例如: 有验证组,但是,我不知道如何在这种情况下应用它们。我是否可以指定以下内容:如果验证ParentA,则为其字段应用GroupA,最好是通过一些注释,而不使用instanceof?我真的不想创建具有不同验证注释的两种类型ChildA和ChildB。我正在用Spring4建立休息服务。谢谢您的反馈。试试这段代码 public class ParentA { @Valid @ConvertGroup(from=Default.cl

如何根据给定bean包含在哪个类中更改验证规则? 例如:

有验证组,但是,我不知道如何在这种情况下应用它们。我是否可以指定以下内容:如果验证ParentA,则为其字段应用GroupA,最好是通过一些注释,而不使用instanceof?我真的不想创建具有不同验证注释的两种类型ChildA和ChildB。我正在用Spring4建立休息服务。谢谢您的反馈。

试试这段代码

public class ParentA {
    @Valid
    @ConvertGroup(from=Default.class, to=ParentA.class)
    private Child c;
}

public class ParentB {
    @Valid
    @ConvertGroup(from=Default.class, to=ParentB.class)
    private Child c;
}

public class Child {
    @NotNull(groups=ParentA.class)
    @Null(groups=ParentB.class)
    private String name;
}
您可以在中找到更多信息和其他示例

public class ParentA {
    @Valid
    @ConvertGroup(from=Default.class, to=ParentA.class)
    private Child c;
}

public class ParentB {
    @Valid
    @ConvertGroup(from=Default.class, to=ParentB.class)
    private Child c;
}

public class Child {
    @NotNull(groups=ParentA.class)
    @Null(groups=ParentB.class)
    private String name;
}