数据库连接的切换方法、装置、设备及介质制造方法及图纸

技术编号:26504877 阅读:17 留言:0更新日期:2020-11-27 15:32
本发明专利技术实施例公开了一种数据库连接的切换方法、装置、设备及介质。该方法包括:当执行至目标数据操作时,如果目标数据操作添加有目标数据源切换注解,则基于面向切面编程组件为目标数据操作织入与目标数据源切换注解匹配的目标数据源切换方法;执行目标数据源切换方法并跳转至目标数据操作的后续数据操作;其中,在目标数据源切换方法的执行过程中实现:将系统数据源由当前数据源切换至与目标数据源切换注解对应的目标数据源,执行目标数据操作。上述技术方案实现了在系统运行过程中根据不同业务或数据库操作实时在线快速地切换数据库连接,无需对系统原有代码进行过多地改动,也无需投入较高的经济成本和学习成本。

【技术实现步骤摘要】
数据库连接的切换方法、装置、设备及介质
本专利技术实施例涉及数据库
,尤其涉及一种数据库连接的切换方法、装置、设备及介质。
技术介绍
随着传统的数据库技术日趋成熟、计算机网络技术的飞速发展和应用范围的扩充,数据库应用已经普遍建立于计算机网络之上。此时,集中式数据库系统表现出它的不足:数据按实际需要已在网络上分布存储,若再采用集中式处理,势必造成通信开销大的问题;应用程序集中在一台计算机上运行,一旦该计算机发生故障,则整个系统都会受到影响,可靠性不高;集中式处理导致系统的规模和配置都不够灵活,系统的可扩充性较差。因此,集中式DB(Database,数据库)的“集中计算”概念向“分布计算”概念发展。分布计算主要体现在客户机/服务器模式和分布式数据库体系结构两个方面。分布式数据库是数据库技术与网络技术相结合的产物,在数据库领域已形成一个分支,随着分布式数据库系统进入商品化应用阶段,传统的关系数据库产品均发展成以计算机网络及多任务操作系统为核心的分布式数据库产品,同时分布式数据库逐步向客户机/服务器模式发展。然而,现有的信息系统框架中,对于分布式数据库的支持较少。一般而言,系统启动时连接某个数据库后不支持在线变动,也即不支持根据不同业务在线切换数据源,在需要切换数据库连接时,仅能在关闭系统后通过修改配置文件再重启的方式来实现,而且只支持在历史数据归档后再使用新的数据库。也有部分企业使用一些成熟的大型的分库分表中间件,来实现数据库连接的切换,不但经济成本和学习成本较高,而且对于简单的现有系统的改造而言过于臃肿,不适用于一些简单的现有系统的数据库分布式扩展场景。
技术实现思路
本专利技术实施例提供一种数据库连接的切换方法、装置、设备及介质,以实现数据库连接的实时快速切换。第一方面,本专利技术实施例提供了一种数据库连接的切换方法,包括:当执行至目标数据操作时,如果目标数据操作添加有目标数据源切换注解,则基于面向切面编程组件为所述目标数据操作织入与所述目标数据源切换注解匹配的目标数据源切换方法;执行所述目标数据源切换方法,并跳转至所述目标数据操作的后续数据操作;其中,在所述目标数据源切换方法的执行过程中实现:将系统数据源由当前数据源切换至与所述目标数据源切换注解对应的目标数据源,执行所述目标数据操作。第二方面,本专利技术实施例还提供了一种数据库连接的切换装置,包括:数据源切换方法织入模块,设置为当执行至目标数据操作时,如果目标数据操作添加有目标数据源切换注解,则基于面向切面编程组件为所述目标数据操作织入与所述目标数据源切换注解匹配的目标数据源切换方法;数据源切换方法执行模块,设置为执行所述目标数据源切换方法,并跳转至所述目标数据操作的后续数据操作;其中,所述数据源切换方法执行模块包括:第一数据源切换单元,设置为将系统数据源由当前数据源切换至与所述目标数据源切换注解对应的目标数据源;目标数据库执行单元,设置为执行所述目标数据操作。第三方面,本专利技术实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本专利技术任意实施例所述的数据库连接的切换方法。第四方面,本专利技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本专利技术任意实施例所述的数据库连接的切换方法。本专利技术实施例提供的技术方案,当执行至添加有目标数据源切换注解的目标数据操作时,首先基于面向切面编程组件为目标数据操作织入与所述目标数据源切换注解匹配的目标数据源切换方法,然后执行该目标数据源切换方法,实现将系统数据源由当前数据源切换至与目标数据源切换注解对应的目标数据源,并执行所述目标数据操作,之后顺序跳转至目标数据操作的后续数据操作,以此实现了在系统运行过程中根据不同业务或不同数据库操作实时在线快速地切换数据库连接,无需对系统原有代码进行过多地改动,也无需像使用商业中间件那样投入较高的经济成本和学习成本。附图说明图1是本专利技术实施例一中的一种数据库连接的切换方法的流程图;图2是本专利技术实施例二中的一种数据库连接的切换方法的流程图;图3是本专利技术实施例三中的一种数据库连接的切换方法的流程图;图4是本专利技术实施例四中的一种数据库连接的切换装置的结构示意图;图5是本专利技术实施例五中的一种计算机设备的硬件结构示意图。具体实施方式下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。实施例一图1是本专利技术实施例一提供的一种数据库连接的切换方法的流程图,可适用于在系统运行过程中实时在线进行数据库连接切换的情况,该方法可以由本专利技术实施例提供的数据库连接的切换装置来执行,该装置可采用软件和/或硬件的方式实现,并一般可集成在计算机设备中。如图1所示,本实施例提供的数据库连接的切换方法,具体包括:S110、当执行至目标数据操作时,如果目标数据操作添加有目标数据源切换注解,则基于面向切面编程组件为所述目标数据操作织入与所述目标数据源切换注解匹配的目标数据源切换方法。目标数据操作,可以是指针对数据源的任意一种数据操作,尤其是指用于实现系统预设业务的数据操作,例如当预设业务是插入用户信息时,目标数据操作即为用户信息插入操作,再例如当预设业务是插入订单信息时,目标数据操作即为订单信息插入操作。目标数据源切换注解,指的是预先编译的用于指示进行对数据库连接进行切换的注解,例如可以命名为@SwitchDatasource注解。对目标数据源切换注解的属性进行解析,即可确定与目标数据源切换注解对应的目标数据源,也就是系统需要建立连接的数据源。注解是用户直接使用的API(ApplicationProgrammingInterface,应用程序接口),注解使用非常简单,只需要需要在数据库操作上添加目标数据源切换注解即可。目标数据源切换注解的只有一个属性value,可以用于定义数据源的名称。在一种具体的实施方中,目标数据源切换注解的值(value)可以是目标数据源的数据库连接串的名称。其中,数据库连接串信息用于实现系统与对应的目标数据源建立连接,具体可以包括协议、IP地址、端口号、实例名或者服务名,等等。标识或者添加有目标数据源切换注解的目标数据操作,用于指示此时需要对系本文档来自技高网
...

【技术保护点】
1.一种数据库连接的切换方法,其特征在于,包括:/n当执行至目标数据操作时,如果目标数据操作添加有目标数据源切换注解,则基于面向切面编程组件为所述目标数据操作织入与所述目标数据源切换注解匹配的目标数据源切换方法;/n执行所述目标数据源切换方法,并跳转至所述目标数据操作的后续数据操作;/n其中,在所述目标数据源切换方法的执行过程中实现:将系统数据源由当前数据源切换至与所述目标数据源切换注解对应的目标数据源,执行所述目标数据操作。/n

【技术特征摘要】
1.一种数据库连接的切换方法,其特征在于,包括:
当执行至目标数据操作时,如果目标数据操作添加有目标数据源切换注解,则基于面向切面编程组件为所述目标数据操作织入与所述目标数据源切换注解匹配的目标数据源切换方法;
执行所述目标数据源切换方法,并跳转至所述目标数据操作的后续数据操作;
其中,在所述目标数据源切换方法的执行过程中实现:将系统数据源由当前数据源切换至与所述目标数据源切换注解对应的目标数据源,执行所述目标数据操作。


2.根据权利要求1所述的方法,其特征在于,当所述当前数据源为默认数据源时,将系统数据源由当前数据源切换至与所述目标数据源切换注解对应的目标数据源,包括:
将系统数据源由所述默认数据源切换至与所述目标数据源切换注解对应的目标数据源;
在执行所述目标数据操作之后,还包括:将系统数据源由所述目标数据源切换回所述默认数据源。


3.根据权利要求1或2所述的方法,其特征在于,所述目标数据源切换注解的值为所述目标数据源的数据库连接串的名称。


4.根据权利要求3所述的方法,其特征在于,将系统当前数据源由默认数据源切换至与所述目标数据源切换注解对应的目标数据源,包括:
在目标配置文件中,获取与所述目标数据源切换注解的值对应的目标数据库连接串信息;
基于所述目标数据库连接串信息,将系统当前数据源切换至所述目标数据源;
将系统当前数据源由所述目标数据源切换至与所述默认数据源,包括:
在所述目标配置文件中,获取与所述默认数据源对应的默认数据库连接串信息;
基于所述默认数据库连接串信息,将系统当前数据源切换回所述默认数据源。


5.根据权利要求4所述的方法,其特征在于,所...

【专利技术属性】
技术研发人员:黄阳
申请(专利权)人:中国建设银行股份有限公司建信金融科技有限责任公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1