多條件查詢---ssh版本

fatsozhang發表於2010-11-21

    多條件查詢就是著有多個條件聯合查詢,這就意味著可以選一個或多個條件進行查詢。我用一副圖能更好的說明什麼是多條件查詢。

如下圖:

多條件查詢

 

下面將是具體方法:(本文采用的是SSH框架)

在Action 的search方法中呼叫兩個方法:

 

方法一:

 

作用:得到要查詢的記錄的個數。

具體引數:都是要查詢的條件。做適當處理。轉換成對應的實體類的屬性。

 

方法二:

 

作用:得到要查詢的記錄。

具體引數:都是要查詢的條件。做適當處理。轉換成對應的實體類的屬性。

 

這兩個方法都是JinHuoService介面裡面的方法,程式碼如下:

 

具體實現類程式碼: 

 

 

下面有兩個方法要解釋:(getCount 方法和 find方法將在最後給出)

 

第一個,上段程式碼中的就是私有方法 

 

 它的功能就是建立查詢中要用的HQL和HQL的引數。因為我們不能確定使用者查詢條件都是什麼。所以在這個方法中判斷。

 

這個方法的核心就是第二個需要解釋的方法:

 

這也是一個介面中的方法(JhdDao介面)定義如下:

 

功能:它將返回一個HQL中條件(也就是 where )後面的部分HQL。 

引數:List l 的定義是將用到的引數(也就是對應HQL中 ? 的引數)儲存起來(在次強調一下,不是所以的引數都能用到,List儲存的是使用者查詢時已設定的引數)

 

 

具體實現類的實現程式碼如下:

 

 getCount 方法和 find方法 

 

 

相關文章