[發明專利]一種多數據源集成方法有效
| 申請號: | 202110709477.7 | 申請日: | 2021-06-25 |
| 公開(公告)號: | CN113360478B | 公開(公告)日: | 2023-03-10 |
| 發明(設計)人: | 張志成;李明明;郭保榮;彭文凈;解熒 | 申請(專利權)人: | 浪潮云信息技術股份公司 |
| 主分類號: | G06F16/21 | 分類號: | G06F16/21;G06F16/27;G06F21/60;G06F21/62 |
| 代理公司: | 濟南信達專利事務所有限公司 37100 | 代理人: | 姜鵬 |
| 地址: | 250100 山東省濟南市高*** | 國省代碼: | 山東;37 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 多數 集成 方法 | ||
本發明涉及數據庫領域,具體提供了一種多數據源集成方法,具有如下步驟:S1、數據源信息配置;S2、系統讀取配置信息;S3、測試連接信息,連接數據庫;S4、構建數據庫連接池存放連接;S5、當使用到此連接,根據key值獲取數據連接池,用此連接池中連接做其他數據庫操作。與現有技術相比,本發明可以使調用者屏蔽掉數據連接層面的問題,進而專注于數據業務展示層面的開發。
技術領域
本發明涉及數據庫領域,具體提供一種多數據源集成方法。
背景技術
數據可視化主要旨在通過圖形方式清晰有效地傳遞信息。也就是說,可視化的存在是為了幫助我們更好地傳遞信息。我們可以使用程序將已有數據轉化為可視化結果,也可以使用簡單的數據可視化工具通過相應的操作將數據文件轉化為可視化結果,甚至進行進一步的數據分析與探索,這類工具很多,但是其中首要的條件都是創建數據源的連接,否則將無法讀取相關數據庫中的數據也無法做到數據的可視化。
但是目前數據庫的種類極多,根據數控存儲的方式目前分為兩大類型,即關系型和非關系型數據庫,若每個系統都去實現這部分數據庫的連接過于繁瑣,達不到快速開發的目的。
發明內容
本發明是針對上述現有技術的不足,提供一種實用性強的多數據源集成方法。
本發明解決其技術問題所采用的技術方案是:
一種多數據源集成方法,具有如下步驟:
S1、數據源信息配置;
S2、系統讀取配置信息;
S3、測試連接信息,連接數據庫;
S4、構建數據庫連接池存放連接;
S5、當使用到此連接,根據key值獲取數據連接池,用此連接池中連接做其他數據庫操作。
進一步的,在步驟S1中,采用spring boot作為后臺框架,在項目啟動時,讀取項目中默認相關數據源的連接驅動。
作為優選,使用spring的ApplicationRunner,在項目啟動時即將加載yml中配置的相關數據源信息,根據相關driver的名稱加載到classloader中。
進一步的,對于外包擴展的數據源驅動,定義相關文件夾用于存儲驅動,然后讀取該文件夾路徑,將相關驅動包動態加載到系統中,從而達到動態添加數據驅動的功能。
進一步的,當前端選定相關數據源并將相關數據源信息請求到后端時,后端采用將jdbcUrl、username、password和version關鍵信息做相關加密,后得到此連接的key,使用ConcurrentHashMap存儲連接的key,value為對應連接的數據庫連接池,此處使用DruidDataSource作為數據庫的連接池。
進一步的,將所用到的數據庫連接驅動jar包整理好,根據不同數據源驅動的不同連接url也做好相關配置。
作為優選,對于安全系數高的驅動采用Kerberos認證,在配置數據源信息時若存在Kerberos認證則需要配置相關密鑰。
進一步的,根據步驟S1中的數據源信息配置,在步驟S2中根據規則生成key,判斷Map中是否包含所述key,若存在,則取出對應的連接池;如不存在,創建對應連接池。
進一步的,當多個用戶同時請求一個新數據源時,則加入ReentrantLock;若采用分布式部署的方式也可使用分布式鎖來實現。
進一步的,在步驟S4中,取數據源版本,然后連接url,通過md5加密做key存儲在map中。
本發明的一種多數據源集成方法和現有技術相比,具有以下突出的有益效果:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浪潮云信息技術股份公司,未經浪潮云信息技術股份公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110709477.7/2.html,轉載請聲明來源鉆瓜專利網。





