[發明專利]將SQL代碼自動轉換為Java代碼的方法和裝置有效
| 申請號: | 201910260266.2 | 申請日: | 2019-04-02 |
| 公開(公告)號: | CN110008448B | 公開(公告)日: | 2023-10-17 |
| 發明(設計)人: | 朱李悅;鐘慰;蔣亞琴;傅繼星 | 申請(專利權)人: | 中國工商銀行股份有限公司 |
| 主分類號: | G06F8/51 | 分類號: | G06F8/51 |
| 代理公司: | 北京三友知識產權代理有限公司 11127 | 代理人: | 孫乳筍;王濤 |
| 地址: | 100140 北*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | sql 代碼 自動 轉換 java 方法 裝置 | ||
1.一種將SQL代碼自動轉換為Java代碼的方法,其特征在于,所述方法包括:
根據接收的SQL代碼,生成檢索上下文對象;
根據所述檢索上下文對象查找預先設置的哈希映射集合,得到對應的Java代碼。
2.根據權利要求1所述的方法,其特征在于,所述根據所述檢索上下文對象查找預先設置的哈希映射集合,得到對應的Java代碼包括:
根據設置的字段分隔符,對SQL字符串進行鍵值對轉換,得到所述預先設置的哈希映射集合。
3.根據權利要求1所述的方法,其特征在于,所述根據接收的SQL代碼語句,生成檢索上下文對象包括:
根據SQL代碼,確定關鍵要素;
根據所述關鍵要素,生成檢索上下文對象。
4.根據權利要求3所述的方法,其特征在于,所述關鍵要素包括:表名、輸出字段、檢索條件、排序字段。
5.根據權利要求4所述的方法,其特征在于,所述根據所述檢索上下文對象查找預先設置的哈希映射集合,得到對應的Java代碼還包括:
判斷所述檢索條件是否存儲在哈希映射集合中,確定存儲在哈希映射集合中,則輸出第一數據查詢結果;
確定沒有存儲在哈希映射集合中,則判斷所述檢索條件是否進行單表查詢,確定進行單表查詢,則根據單表查詢,輸出第一數據結果集;
確定不進行單表查詢,則對該檢索條件進行多表關聯查詢,輸出第二數據結果集;
將所述第一數據結果集和第二數據結果集組合,輸出第二數據查詢結果。
6.根據權利要求5所述的方法,其特征在于,所述確定沒有存儲在哈希映射集合中,則判斷所述檢索條件是否進行單表查詢,確定進行單表查詢,則根據單表查詢,輸出第一數據結果集包括:
當所述檢索條件滿足左操作符為索引字段的表達式,且所述表達式之間的邏輯運算均為“與”操作,且所述表達式的運算符為等值時,進行單表查詢。
7.一種將SQL代碼自動轉換為Java代碼的裝置,其特征在于,所述裝置包括:
檢索上下文對象生成模塊,用于根據接收的SQL代碼,生成檢索上下文對象;
Java代碼確定模塊,用于根據所述檢索上下文對象查找預先設置的哈希映射集合,得到對應的Java代碼。
8.根據權利要求7所述的裝置,其特征在于,所述Java代碼確定模塊包括:
字符串轉換單元,用于根據設置的字段分隔符,對SQL字符串進行鍵值對轉換,得到所述預先設置的哈希映射集合。
9.根據權利要求7所述的裝置,其特征在于,所述檢索上下文對象生成模塊包括:
關鍵要素確定單元,用于根據SQL代碼,確定關鍵要素;
生成單元,用于根據所述關鍵要素,生成檢索上下文對象。
10.根據權利要求9所述的裝置,其特征在于,所述關鍵要素包括:表名、輸出字段、檢索條件、排序字段。
11.根據權利要求10所述的裝置,其特征在于,所述Java代碼確定模塊還包括:
第一數據查詢結果確定單元,用于判斷所述檢索條件是否存儲在哈希映射集合中,確定存儲在哈希映射集合中,則輸出第一數據查詢結果;
第一數據結果集確定單元,用于確定沒有存儲在哈希映射集合中,則判斷所述檢索條件是否進行單表查詢,確定進行單表查詢,則根據單表查詢,輸出第一數據結果集;
第二數據結果集確定單元,用于確定不進行單表查詢,則對該檢索條件進行多表關聯查詢,輸出第二數據結果集;
第二數據查詢結果確定單元,用于將所述第一數據結果集和第二數據結果集組合,輸出第二數據查詢結果。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國工商銀行股份有限公司,未經中國工商銀行股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910260266.2/1.html,轉載請聲明來源鉆瓜專利網。





