在运行时动态禁用休眠验证注释?

在运行时动态禁用休眠验证注释?,第1张

在运行时动态禁用休眠验证注释

是否可以在运行时关闭每个类的某些约束/注释?例如,如果我想对firstName字段进行@NotNull检查,那可能吗?

不它不是。Bean验证未定义此类功能。Hibernate Validator
HV-98中有一个未解决的问题,该问题讨论了重新加载元数据的可能性,但是即使在那儿,您也需要重建验证器工厂。

您可以通过XML配置覆盖注释,然后

Validator(Factory)
使用不同的配置来重新创建实例,但这可能并不容易。

这将使测试更容易查看某个约束是否正确正确触发,因为我可以关闭所有其他约束,而只需检查一个约束即可。

如果是关于测试,则可以

Validator.validatevalue
用来仅验证给定的字段。除此之外,如果您验证整个对象图并获取一组约束违规,则可以对其进行迭代并检查元数据。元数据中有足够的信息来验证特定约束是否已执行并失败。



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/4934576.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-13
下一篇2022-11-13

发表评论

登录后才能评论

评论列表(0条)

    保存