2010-05-21 97 views
1

假設我有一個名爲inactiveUsers的大表和一個搜索表單。如果選擇了與用戶相關的特徵(地址,姓名,電話號碼等),我想有條件地加入inactiveUsers表。有沒有辦法做到這一點沒有以下內容:ibatis isNotEmpty with multiple variables

<isNotEmpty property="address">JOIN inactiveUsers</isNotEmpty> 
<isNotEmpty property="phoneNumber">JOIN inactiveUsers</isNotEmpty> 
<isNotEmpty property="name">JOIN inactiveUsers</isNotEmpty> 

等等另外10-20 isNotEmpty子句。我想做類似的事情:

<isAnyNotEmpty properties="address, phoneNumber, name, ....">JOIN inactiveUsers</isNotEmpty> 

這是可能與ibatis?如果是這樣,怎麼樣?

回答

1

我想創建一個布爾屬性useJoin

public boolean isUseJoin() { 
     if(!adress.equals("") && !phoneNumber.equals("")&&!name.equals("")) { 
      return true; 
     } else { 
      return false; 
     } 
    } 

並不完美,但似乎比IBATIS條款多條語句更好。

0

我相信這是不可能的(簡單地)與iBatis2。 iBatis3有一個<if>標籤,但是語法不會很簡單。

我寧願在對象中編寫僞屬性(如果可以觸摸它)來詢問這種情況,那會更簡單。