java - 我想有条件地验证一个对象

标签 java validation bean-validation hibernate-validator

我的类(class)中有一个对象。我用 hibernate validator 验证它,如下所示:

@Pattern(regexp="[0-9]{1,13}")
private String onlyNumber = null;

但是,我想在什么时候验证我的对象

if(onlyNumber != null && !onlyNumber.equals("")

因为它是可选的。 我想用正则表达式来做到这一点。有什么办法可以成功吗? 谢谢

最佳答案

@Pattern(regexp="[0-9]{0,13}")

应该足够了。 null 值始终被视为有效(除了其他验证之外,您还需要 @NotNull 来拒绝 null)。并且空字符串与上面的正则表达式匹配。

关于java - 我想有条件地验证一个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28454861/

相关文章:

java - 即使违反约束,Hibernate validator 也会执行 JAX-RS REST 端点

java - SafeHtml Bean 验证,允许 HTML 元素属性,同时拒绝可能的恶意标签(即 <script>...)

java - 无法使用 Android SDK 3 连接到 Facebook

java - 是否可以在 Android 上使用 GoogleFinanceAPI?

java - 建立连接时的 HttpsURLConnection 状态码 302

jQuery 在 ajaxForm 之前验证

java - Spring Framework 表单验证、Hibernate bean 和 bean 填充

html 表单的 Javascript 验证不起作用

java - 有没有办法从 Bean Validation 字段级 ConstraintValidator 中访问目标 bean?

java - 如何为 orientdb 嵌入式设置 jmh 测试?