【发布时间】:2016-11-22 00:41:50
【问题描述】:
我有一个模型应用了一些非空休眠验证。我需要执行一些 DAO 查询(创建/更新),以便仅在执行这些查询时放松验证。我不想完全关闭验证,因为我的 DAO 层中有其他查询需要它们。
【问题讨论】:
标签: java hibernate validation hibernate-validator
我有一个模型应用了一些非空休眠验证。我需要执行一些 DAO 查询(创建/更新),以便仅在执行这些查询时放松验证。我不想完全关闭验证,因为我的 DAO 层中有其他查询需要它们。
【问题讨论】:
标签: java hibernate validation hibernate-validator
如果您的架构不是由 Hibernate 生成的,或者 Hibernate 没有最终的智能,那么有一种方法可以通过本机查询绕过 @NotNull 检查。您可以尝试在不触发应用层验证的情况下本地插入/更新您的数据库行,但 Hibernate 非常友好,还可以为带有 @NotNull 注释的字段生成 NOT NULL 数据库约束,这最终是一件好事。
您应该想知道为什么您需要执行不符合已实施验证限制的查询,因为添加该约束的开发人员确实考虑到了它的后果。一般来说,目标应该是防止在数据库中插入(可避免的)空值。
【讨论】: