自定義查詢

2021-08-30 12:49:46 字數 1172 閱讀 5936

自定義查詢是一種比較常用的功能。功能劃分為兩部分。一是系統管理員根據需求訂製出查詢需要使用到的一些有關聯的表的集合,作為查詢的基礎模型;二是使用者可以在這個模型的基礎上定義自己的查詢條件,包括定義查詢的輸出顯示項,來實現靈活的查詢功能。用例圖如下所示:

系統的功能結構圖如下所示,包括兩大功能,分別是模型初始化元件(initial model

)和查詢元件(query component

)。initial model

功能是提供給系統管理員使用的,主要作用就是訂製初始化結構模型(一套關聯的表及字段,是使用者可以用來進行查詢條件選擇的範圍)。query component

是提供給系統普通使用者使用的靈活查詢功能,可以讓使用者自定義查詢條件及結果顯示內容。

模型初始化元件(initial model

),包括資料庫配置(db config

)和模型訂製(model customize

)兩個子功能。

1. 其中db config

功能,負責建立和維護資料庫的鏈結引數資料,包括資料庫型別、使用者名稱、密碼、鏈結字串等。

2.  model customize

功能,是根據配置好的資料庫鏈結,從資料庫的元資料(metadata

)中獲取業務資料庫的表結構,並由系統管理員來訂製一套相關的表及字段的集合(我們稱之為初始結構模型model

),提供給查詢元件(query component

)來進行靈活的組合查詢功能。

查詢元件(query component

)中主要有四個子功能。包括模型載入(model loader

)、查詢條件訂製(query condition customize

)、組裝查詢語句(hql generate

)和查詢顯示(query&display)。

1. 其中model loader

,負責從初始化好的模型當中,提取資料,以樹形方式展現可以配置的表及字段內容。

2. query condition customize

功能,負責記錄使用者選定的查詢條件、輸出顯示項等內容。

3. hql generate

功能,負責將使用者定義的查詢條件組裝成hql

語句。

4. query&display功能,通過組裝好的hql,進行查詢,返回結果並展現給使用者。

最終實現結果如圖所示:

spring data jpa 自定義查詢

spring data jpa 內部封裝了引用了 hibernate 的介面。使用時,實際上使用的是 hibernate 的相關方法,自定義查詢也是按照 hibernate 進行的 整合 jpa 的介面 public inte ce teacherrepository extends jparepo...

flexigrid自定義查詢

相信用過flexigrid的朋友都知道,它有自帶的查詢功能,但是我想自定義自己的查詢,介面如下 名稱 span div input id query name type text div div style margin top 10px div class prompt span 描述 span ...

Spring Data Jpa 查詢返回自定義物件

今天使用jpa遇到乙個問題,發現查詢多個欄位時返回物件不能自動轉換成自定義物件。如下 user 實體物件 entity table name t user public class user public void setid integer id public strng getname publ...