[發明專利]一種混合數據源插件化調用系統及調用方法有效
| 申請號: | 202011372535.3 | 申請日: | 2020-11-30 |
| 公開(公告)號: | CN112363781B | 公開(公告)日: | 2022-06-10 |
| 發明(設計)人: | 楊思樞 | 申請(專利權)人: | 杭州玳數科技有限公司 |
| 主分類號: | G06F9/445 | 分類號: | G06F9/445 |
| 代理公司: | 常州佰業騰飛專利代理事務所(普通合伙) 32231 | 代理人: | 顧翰林 |
| 地址: | 311121 浙江省杭州市余杭區倉前街道余杭*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 混合 數據源 插件 調用 系統 方法 | ||
1.一種混合數據源插件化調用系統,其特征在于:包含三個組件,
具體為:A、DataSourceClientFactory組件-數據源客戶端制造工廠;
1.目標:數據源客戶端代理制造工廠,管理所有數據源客戶端代理DataSourceClientProxy的整個生命周期;
2.編程語言采用Java;
B、DataSourceClientProxy組件-數據源客戶端代理;
1.目標:在對數據源客戶端DataSourceClient做測試聯通性,查詢,修改,刪除操作的時候要做前置和后置操作;
2.編程語言:Java;
C、DataSourceClient組件-數據源客戶端;
1.目標:在對數據源客戶端DataSourceClient做測試聯通性,查詢,修改,刪除操作;
2.編程語言:Java;
調用系統的方法,包括如下步驟:
步驟一、先初始化數據源客戶端代理緩存ClientProxyCache;
步驟二、先通過插件名pluginName從ClientProxyCache里查找看是否已經有數據源客戶端代理,如果有,則直接從ClientProxyCache獲取數據源客戶端代理DataSourceClientProxy;
步驟三、如果沒有,則通過DataSourceClientProxy組件構造一個新的數據源客戶端代理,把構造出的數據源客戶端代理DataSourceClientProxy通過pluginName放入到ClientProxyCache;
步驟四、DataSourceClientFactory組件會通過LRU緩存算法對一段時間內不頻繁使用的DataSourceClientProxy進行銷毀,會調用ClientProxyCacheremove刪除方法進行移除;
步驟五、當客戶發起一個數據查詢executeQuery請求時,先把當前線程的上下文類加載ContextClassLoader設置成加載DataSourceClient的類加載器;
步驟六、調用DataSourceClient里的數據查詢executeQuery方法;
步驟七、在調用executeQuery方法結束后,再把當前線程的上下文類加載ContextClassLoader恢復到調用方法之前;
步驟八、根據插件名自定義類加載器DataSourceClientClassLoader,打破先有的雙親委派模式,先加載自身類加載器的類去加載對應路徑下的數據源插件jar包,如果沒有再找上游的父類類加載器去加載;
步驟九、通過SPI技術在數據源插件jar包找到IClient文件;
步驟十、在IClient文件讀取要數據源客戶端完整類路徑;
步驟十一、根據完整的類路徑通過java的反射機制構造一個數據源客戶端DataSourceClient。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于杭州玳數科技有限公司,未經杭州玳數科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011372535.3/1.html,轉載請聲明來源鉆瓜專利網。





