[發明專利]基于通用數據訪問框架的數據查詢方法在審
| 申請號: | 202111192337.3 | 申請日: | 2021-10-13 |
| 公開(公告)號: | CN115964385A | 公開(公告)日: | 2023-04-14 |
| 發明(設計)人: | 張馳榮;劉培德;于瀛 | 申請(專利權)人: | 遠光軟件股份有限公司 |
| 主分類號: | G06F16/245 | 分類號: | G06F16/245;G06F16/242;G06F16/2453;G06F16/25;G06F16/28;G06F8/30 |
| 代理公司: | 北京天達知識產權代理事務所有限公司 11386 | 代理人: | 劉鏡 |
| 地址: | 519085 廣東*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 通用 數據 訪問 框架 查詢 方法 | ||
本發明涉及一種基于通用數據訪問框架的數據查詢方法,屬于數據訪問技術領域,解決了現有技術中對不同存儲形式的數據的查詢邏輯不統一且處理邏輯復雜的問題。包括如下步驟:基于待查詢數據的訪問方式,獲取數據源;獲取查詢條件,調用查詢構造器,通過鏈式調用方式對待查詢數據構造查詢對象語法樹,基于查詢對象語法樹獲取查詢對象;根據所述數據源,創建查詢執行器;將查詢對象傳入查詢執行器中,執行查詢方法后得到查詢結果。實現了用統一的查詢方法查詢不同存儲形式的數據。
技術領域
本發明涉及數據訪問技術領域,尤其涉及一種基于通用數據訪問框架的數據查詢方法。
背景技術
隨著數據存儲能力的提高,產生了各種不同的數據庫,面對日益復雜的需求,企業也會采用多樣化的存儲形式。在支撐靈活的數據查詢和分析工作中,就需要對不同來源的數據進行處理,如何快速開發并滿足不同數據的查詢需求是在開發系統時比較關注的問題。
對于關系型數據庫,現有的開源框架封裝了數據查詢方法,便于開發人員查詢數據和封裝SQL(Structured?Query?Language,結構化查詢語言)語句,比如Hibernate、JPA(Java?Persistence?API,Java持久層API)、Mybatis,對于復雜的業務數據獲取,往往直接編寫符合數據庫語法的SQL進行查詢。對于直接存儲在內存的數據,或者內存數據庫的數據,一般是先獲取內存數據對應的對象,通過get方法獲取具體的值,或者將內存數據放在集合中,通過操作集合的方法來處理數據。
在采用開源框架中面向對象的查詢方式時,通常適用于簡單的數據查詢,而且開發人員需要根據查詢的業務類型,構建出對應的業務對象;采用封裝SQL或直接編寫SQL時,不同類型的數據庫,或者有些數據庫不同版本,都存在SQL語法不同的問題。往往需要根據數據庫類型,封裝多套SQL來滿足不同的語法要求,而且需要注意SQL注入、SQL拼接順序、SQL動態參數與占位符的匹配等問題;如果需要對內存數據中多個對象數據進行關聯、比對,或者內存中的對象數據與數據庫中獲取的數據,與文件中的數據交互匹配時,需要由開發人員根據具體的需求,獲取所需的內存數據后,再與其它數據通過編寫程序來處理。而且,如果項目中既要對數據庫的數據進行處理,又要對內存數據處理,開發人員就需要采用多種開發方式,影響開發效率,定制開發的代碼也無法復用,代碼質量和查詢方式都不可控。
發明內容
鑒于上述的分析,本發明實施例旨在提供一種基于通用數據訪問框架的數據查詢方法,用以解決現有對不同存儲形式的數據的查詢邏輯不統一且處理邏輯復雜的問題。
本發明實施例提供了一種基于通用數據訪問框架的數據查詢方法,包括如下步驟:
基于待查詢數據的訪問方式,獲取數據源;
獲取查詢條件,調用查詢構造器,通過鏈式調用方式對待查詢數據構造查詢對象語法樹,基于查詢對象語法樹獲取查詢對象;
根據數據源,創建查詢執行器;
將查詢對象傳入查詢執行器中,執行查詢方法后得到查詢結果。
基于上述方法的進一步改進,基于待查詢數據的訪問方式,獲取數據源,包括:
當待查詢數據存儲于數據庫中,且項目框架未采用Hibernate或JPA,則通過數據庫表名和字段名訪問待查詢數據,獲取JDBC數據源;
當待查詢數據存儲于數據庫中,且項目框架采用了Hibernate或JPA,則將待查詢數據封裝為實體對象,獲取JPA數據源;
當待查詢數據存儲于內存中,則將待查詢數據封裝為內存表對象,獲取內存數據源;
當待查詢數據存儲于常量數據集,則將待查詢數據封裝為內存表對象或常量查詢引用對象,獲取內存數據源。
基于上述方法的進一步改進,內存表對象包括:表別名、數據列表和字段訪問器;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于遠光軟件股份有限公司,未經遠光軟件股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202111192337.3/2.html,轉載請聲明來源鉆瓜專利網。
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





