2013-12-08 37 views
0

我有一個複雜的查詢,例如搜索名稱,年齡,地址等的僱員 如果參數IS NOT NULL我想附加WHERE子句。使用NamedQuery或標準API

例如(僞代碼):

if (age != null) // then append age to the where clause 
    whereClause += whereClause + AND age = :age" 

我想在XML文件使用NamedQuery,但NamedQuery哪裏像MyBatis

誰能幫助我解決這個不支持條件問題?如果你想更復雜的查詢(例如,您在其中動態地列),我會使用標準的API

SELECT e FROM Entity e WHERE (:age IS NULL) OR (:age IS NOT NULL and e.age=:age) 

+0

使用NamedQuery。 – Loc

+1

答案在你的問題的標題中:使用標準API。 –

回答

0

對於這個簡單的例子/條件就可以解決了NamedQuery的問題。