如何使用spring验证器来实现'或'逻辑

时间:2017-11-24 03:53:41

标签: spring hibernate-validator

我想验证具有两种不同条件的模型 例如,

class User{
   private String name;
}

我希望名称可以为null或大于5的大小,如果它不为null。我如何使用验证器。

我知道可以创建一个适合它的自定义注释。但是,我在其他地方也有很多相同的需求。所以我想使用提供的注释。 在我的问题中,如果它提供了一种实现逻辑的方法,它将变得容易。

有人能给我一个解决方案吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

自定义验证器

@AssertTrue(message = "name checked")
public boolean isNameCheck() { 
  if (this.name == null || (this.name != null && this.name.length() <= 5)) { 
    return true; 
  }

  return false;
}

https://docs.jboss.org/hibernate/stable/validator/reference/en-US/html_single/#section-builtin-constraints