Hibernate函数Restrictions.allEq(Map <string,object =“”>)如何处理空值?</string,>

时间:2014-10-01 14:01:12

标签: hibernate equals isnull restrictions

我想知道Hibernate函数Restrictions.allEq(Map<String, Object> ...)如何处理输入Map中的空值(如果是多个Restrictions.eq(String, Object)Restrictions.eqOrIsNull(String, Object))或whatelse。) 从Google快速搜索后,我无法找到Hibernate文档中的任何内容,只有来源说明Restrictions.allEq(...)等同于multiple Restrictions.eq(String, Object)(请参阅here)。 /> 我不确定这是正确的答案,所以我在这里问。 提前谢谢大家

1 个答案:

答案 0 :(得分:3)

下载了Hibernate的源代码(4.3.6.Final),稍加检查后,我终于找到了答案:Restrictions.allEq(Map<String, Object>)被翻译为一堆Restrictions.eq(String, Object),因此null值被重新映射为字符串"null"(根据具体应用可能是或可能不是正确的翻译)。
在我的情况下,我需要使用多个Restrictions.eqOrIsNull(String, Object)来正确管理我的输入Map<String, Object> 我希望这个问题对其他人有用。