如何使用Spring中的javax.validation.constraints验证List中元素的长度

时间:2018-04-20 10:21:52

标签: spring spring-mvc spring-boot bean-validation javax.validation

如何使用Spring中的javax.validation.constraints验证List中元素的长度。现在@Size正在验证列表大小,而不是内部元素。

class RequestInputParamaters {

        @NotNull
        @NotEmpty
        @Size(min = 1, max=4)
        List documentIdentifier_value

    }

1 个答案:

答案 0 :(得分:2)

尝试:

List<@NotNull @NotEmpty @Size(min = 1, max=4) String> documentIdentifier_value;

如果使用hibernate-validator,则您需要版本6+。

传统解决方案:

@Valid List<StringWrapper> documentIdentifier_value;

其中StringWrapper定义为:

public class StringWrapper {
    @NotNull @NotEmpty @Size(min = 1, max=4)
    private String wrapped;
    ...
}