Если вы хотите использовать null
значения с '='
или '<>'
операторами, вы можете найти
ответ от @egallardo hier
очень полезно.
Краткий пример для '='
: выражение
WHERE t.field = :param
вы рефакторинг, как это
WHERE ((:param is null and t.field is null) or t.field = :param)
Теперь вы можете установить для параметра param
либо ненулевое значение, либо null
:
query.setParameter("param", "Hello World"); // Works
query.setParameter("param", null); // Works also