假设我有以下情况:
我有一个实体Person
,其中包含firstName
和lastName
个属性。每当我得到一个新对象Person
时,我想检查这个人是否已经在我的数据库中。所以我查看@NamedQuery
:
@NamedQuery(name = "Person.findAlreadyExisting", query = "SELECT p FROM Person p WHERE p.firstname = :firstName and p.lastname = :lastName")
但事实证明,firstName
可以是null
,因此JPQL会搜索字符串null
作为列firstName
的内容,当然也找不到任何内容结果
所以我的问题是,如何绕过这个(不需要的)行为,即如何指定我是否希望它搜索对象null
或字符串null
而不检查每个条目是null
。