【问题标题】:JSR 303 - defined size or nullJSR 303 - 定义大小或 null
【发布时间】:2016-03-15 11:10:14
【问题描述】:

我有以下带有JSR-303 验证的字段:

@Size(min = 6, max = 6, message = "Field needs to be 6 characters")
private String field;

该字段的要求是6 characters or null

(然后我使用valdr-bean-validation (https://github.com/netceteragroup/valdr-bean-validation) 将其提取为 valdr 格式并在 AngularJS 中使用。)

问题: 我怎样才能满足要求,使用 JSR-303,以便该字段可以是 null or 6 characters?目前我的 @Size 规则至少需要 6 个字符。

我不想使用自定义验证器,因为它与 valdr 兼容。正则表达式是一个不错的选择吗?谢谢

【问题讨论】:

    标签: java validation annotations valdr valdr-bean-validation


    【解决方案1】:

    我使用带有简单正则表达式的@Pattern 注释修复了它:

    @Pattern(regexp = "^.{6,6}$|^$", message = "Field must be 6 digits or empty")
    private String field;
    

    【讨论】:

      【解决方案2】:

      是的,您应该在此字段上使用@Pattern 注释(或使用大小、模式和任何其他规则组合创建自己的注释)

      【讨论】:

        猜你喜欢
        • 2012-08-20
        • 1970-01-01
        • 2011-03-23
        • 2015-07-31
        • 2023-03-29
        • 1970-01-01
        • 2015-01-10
        • 1970-01-01
        • 2011-08-09
        相关资源
        最近更新 更多