Как функция Hibernate Restrictions.allEq (Map<String, Object>) обрабатывает нулевые значения?
Мне интересно, как функция Hibernate Restrictions.allEq(Map<String, Object> ...)
обрабатывает нулевые значения внутри входной карты (если несколько Restrictions.eq(String, Object)
или же Restrictions.eqOrIsNull(String, Object)
) или whatelse).
После быстрого поиска в Google я не смог найти ничего конкретного из документации по Hibernate, и только источник говорит, что Restrictions.allEq(...)
эквивалентно multiple Restrictions.eq(String, Object)
(см. здесь).
Я не уверен, что это правильный ответ, поэтому я спрашиваю здесь. Спасибо всем заранее
1 ответ
После загрузки источников Hibernate (4.3.6.Final) и небольшой проверки я наконец нашел ответ: Restrictions.allEq(Map<String, Object>)
переводится как куча Restrictions.eq(String, Object)
и, следовательно, null
значение переназначается как строка "null"
(который может быть или не быть правильным переводом, основанным на конкретной заявке).
В моем случае мне нужно было использовать несколько Restrictions.eqOrIsNull(String, Object)
правильно управлять моим входом Map<String, Object>
,
Я надеюсь, что этот вопрос будет полезен для кого-то еще.