[发明专利]一种多数据源集成方法有效
申请号: | 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.vipzhuanli.com/pat/books/202110709477.7/2.html,转载请声明来源钻瓜专利网。