gpt4 book ai didi

java - 使用不同的映射配置 JSR-303 hibernate validator

转载 作者:行者123 更新时间:2023-12-01 05:16:47 24 4
gpt4 key购买 nike

我正在考虑将 JSR-303 与 hibernate validator 一起使用。我们希望能够对每个客户进行不同的验证,或者拥有一组基本约束并允许覆盖它们。

我不确定执行此操作的最佳方法是什么。

对约束使用注释是不合适的,因为它们本质上是硬编码在模型中的。我知道我可以使用 XML 来外部化验证(创建指定约束映射文件的 META-INF/validation.xml)。但我不太确定如何轻松地为多个客户进行配置。

我想我希望能够设置一个简单的属性,以便在部署时使用一组完全不同的约束映射文件。

有什么想法吗?

最佳答案

您可以为每个客户创建一个 ValidatorFactory,并使用特定于客户的约束映射 XML 文件对其进行配置,如下所示:

ValidatorFactory validatorFactory = Validation
.byDefaultProvider()
.configure()
.addMapping(...) //input stream with an XML constraint mapping
.addMapping(...) //another input stream with an XML constraint mapping
.buildValidatorFactory();

当您使用 Hibernate Validator 时,您还可以使用 programmatic constraint declaration 的 API创建单独配置的 validator 工厂。

关于java - 使用不同的映射配置 JSR-303 hibernate validator ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11058881/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com