【问题标题】:Conditionally disable hibernate validation while executing hibernate query在执行休眠查询时有条件地禁用休眠验证
【发布时间】:2016-11-22 00:41:50
【问题描述】:

我有一个模型应用了一些非空休眠验证。我需要执行一些 DAO 查询(创建/更新),以便仅在执行这些查询时放松验证。我不想完全关闭验证,因为我的 DAO 层中有其他查询需要它们。

【问题讨论】:

    标签: java hibernate validation hibernate-validator


    【解决方案1】:

    如果您的架构不是由 Hibernate 生成的,或者 Hibernate 没有最终的智能,那么有一种方法可以通过本机查询绕过 @NotNull 检查。您可以尝试在不触发应用层验证的情况下本地插入/更新您的数据库行,但 Hibernate 非常友好,还可以为带有 @NotNull 注释的字段生成 NOT NULL 数据库约束,这最终是一件好事。

    您应该想知道为什么您需要执行不符合已实施验证限制的查询,因为添加该约束的开发人员确实考虑到了它的后果。一般来说,目标应该是防止在数据库中插入(可避免的)空值。

    【讨论】:

      猜你喜欢
      • 2011-06-08
      • 2016-01-27
      • 1970-01-01
      • 2011-04-13
      • 2017-03-21
      • 1970-01-01
      相关资源
      最近更新 更多