通过属性文件为Bean验证配置约束

时间:2014-03-14 12:04:47

标签: hibernate-validator

我想通过属性文件或数据库配置bean验证(JEE6)约束。

因此,例如,下面的Max值将从属性文件或数据库中提取。 这可能吗?

@Max(value = 1) private int elvis;

关于可能的方法的任何建议。

2 个答案:

答案 0 :(得分:1)

通过标准Bean验证无法实现。根据规范的默认值是注释或替代XML。

理论上,Hibernate Validator具有 MetaDataProvider 的(内部)概念,可以考虑插入 DbMetaDataProvider 。但是,这将是相当多的工作,我不确定这是否值得努力。

你用的是什么用例?为什么不使用XML?

答案 1 :(得分:0)

您可以为此编写自己的约束和验证器。约束的参数可以是存储在数据库中的验证参数的一些标识符,验证器可以查询数据库以获取这些参数以根据它们验证值。

一些提示:

  • 请参阅this验证工具,了解如何重用“über验证器”中的现有验证器。
  • 请参阅this问题和this答案,了解如何将bean注入验证器。