[发明专利]一种多数据源集成方法有效
申请号: | 202110709477.7 | 申请日: | 2021-06-25 |
公开(公告)号: | CN113360478B | 公开(公告)日: | 2023-03-10 |
发明(设计)人: | 张志成;李明明;郭保荣;彭文净;解荧 | 申请(专利权)人: | 浪潮云信息技术股份公司 |
主分类号: | G06F16/21 | 分类号: | G06F16/21;G06F16/27;G06F21/60;G06F21/62 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 姜鹏 |
地址: | 250100 山东省济南市高*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 多数 集成 方法 | ||
1.一种多数据源集成方法,其特征在于,具有如下步骤:
S1、数据源信息配置;
采用spring boot作为后台框架,在项目启动时,读取项目中默认相关数据源的连接驱动;
使用spring的ApplicationRunner,在项目启动时即将加载yml中配置的相关数据源信息,根据相关driver的名称加载到classloader中;
对于外包扩展的数据源驱动,定义相关文件夹用于存储驱动,然后读取该文件夹路径,将相关驱动包动态加载到系统中,从而达到动态添加数据驱动的功能;
当前端选定相关数据源并将相关数据源信息请求到后端时,后端采用将jdbcUrl、username、password和version关键信息做相关加密,后得到此连接的key,使用ConcurrentHashMap存储连接的key,value为对应连接的数据库连接池,此处使用DruidDataSource作为数据库的连接池;
将所用到的数据库连接驱动jar包整理好,根据不同数据源驱动的不同连接url也做好相关配置;
对于安全系数高的驱动采用Kerberos认证,在配置数据源信息时若存在Kerberos认证则需要配置相关密钥;
S2、系统读取配置信息;
根据步骤S1中的数据源信息配置,在步骤S2中根据规则生成key,判断Map中是否包含所述key,若存在,则取出对应的连接池;如不存在,创建对应连接池;
当多个用户同时请求一个新数据源时,则加入ReentrantLock;若采用分布式部署的方式也可使用分布式锁来实现;
S3、测试连接信息,连接数据库;
S4、构建数据库连接池存放连接;
取数据源版本,然后连接url,通过md5加密做key存储在map中;
S5、当使用到此连接,根据key值获取数据连接池,用此连接池中连接做其他数据库操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮云信息技术股份公司,未经浪潮云信息技术股份公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110709477.7/1.html,转载请声明来源钻瓜专利网。