分布式JDBC实现方法、设备及计算机可读存储介质技术

技术编号:28791711 阅读:17 留言:0更新日期:2021-06-09 11:29
本发明专利技术公开了一种分布式JDBC实现方法、设备及计算机可读存储介质。分布式JDBC实现方法,包括:当接收到获取数据库连接的请求时,从第一配置文件中获取各个分布式数据库节点的地址并进行储存;当接收到调用执行SQL语句的请求时,从第二配置文件中获取SQL语句模板,并基于SQL语句模板中设置的分片键,连接对应的分布式数据库节点。采用本发明专利技术,可以解决原生JDBC不便于处理分布式数据库场景的问题,降低了应用程序获取分布式数据库节点连接时的复杂度,降低了应用程序开发维护的成本。降低了应用程序开发维护的成本。降低了应用程序开发维护的成本。

【技术实现步骤摘要】
分布式JDBC实现方法、设备及计算机可读存储介质


[0001]本专利技术涉及计算机
,尤其涉及一种分布式JDBC实现方法、设备及计算机可读存储介质。

技术介绍

[0002]目前原生的JDBC实现方式首先是创建连接,其次准备要执行的留空输入参数的SQL语句,然后给该SQL语句赋值参数,最后执行该SQL语句。原生的JDBC实现中,数据库连接在创建后就已经固定,难以对分布式数据库场景进行灵活处理。

技术实现思路

[0003]本专利技术实施例提供一种分布式JDBC实现方法、设备及计算机可读存储介质,用以解决现有技术中原生的JDBC实现中,数据库连接在创建后就已经固定,难以对分布式数据库场景进行灵活处理的问题。
[0004]根据本专利技术实施例的分布式JDBC实现方法,包括:
[0005]当接收到获取数据库连接的请求时,从第一配置文件中获取各个分布式数据库节点的地址并进行储存;
[0006]当接收到调用执行SQL语句的请求时,从第二配置文件中获取SQL语句模板,并基于SQL语句模板中设置的分片键,连接对应的分布式数据库节点。
[0007]根据本专利技术的一些实施例,所述从第一配置文件中获取各个分布式数据库节点的地址储存起来,包括:
[0008]从第一配置文件中获取各个分布式数据库节点的地址,并存储至第一数组;
[0009]设置第一数据结构,所述第一数据结构包括数据库连接属性位、连接的地址位、以及连接状态位;
[0010]从所述第一数组中获取各个分布式数据库节点的地址,并存入所述第一数据结构的连接的地址位,并对应设置连接状态位以及数据库连接属性位。
[0011]根据本专利技术的一些实施例,所述从第二配置文件中获取SQL语句模板,包括:
[0012]设置第二数据结构,所述第二数据结构包括SQL语句位、是否有效判定位、以及参数信息位;
[0013]将从第二配置文件中获取的SQL语句模板存放至所述第二数据结构的SQL语句位,并对应设置是否有效判定位。
[0014]根据本专利技术的一些实施例,所述基于SQL语句模板中设置的分片键,连接对应的分布式数据库节点,包括:
[0015]基于SQL语句模板中设置的分片键,确定对应的分布式数据库节点;
[0016]获取对应的分布式数据库节点的连接状态,若为否,根据对应的分布式数据库节点的地址进行连接。
[0017]根据本专利技术的一些实施例,所述方法,还包括:
[0018]在连接对应的分布式数据库节点后,将第三数据结构存放至所述参数信息位,所述第三数据结构包括参数值位、参数类型位、参数在语句中的位置位。
[0019]根据本专利技术实施例的分布式JDBC实现设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的分布式JDBC实现方法的步骤。
[0020]根据本专利技术实施例的计算机可读存储介质,所述计算机可读存储介质上存储有信息传递的实现程序,所述程序被处理器执行时实现如上所述的分布式JDBC实现方法的步骤。
[0021]采用本专利技术实施例,可以解决原生JDBC不便于处理分布式数据库场景的问题,降低了应用程序获取分布式数据库节点连接时的复杂度,降低了应用程序开发维护的成本。
[0022]上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。
附图说明
[0023]通过阅读下文实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。在附图中:
[0024]图1是本专利技术实施例中分布式JDBC实现方法流程图;
[0025]图2是本专利技术实施例中分布式JDBC实现方法流程图;
[0026]图3是本专利技术实施例中分布式JDBC实现设备框图。
具体实施方式
[0027]下面将参照附图更详细地描述本专利技术的示例性实施例。虽然附图中显示了本专利技术的示例性实施例,然而应当理解,可以以各种形式实现本专利技术而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本专利技术,并且能够将本专利技术的范围完整的传达给本领域的技术人员。
[0028]原生JDBC的实现方式无法对分布式场景的各个数据库节点进行SQL语句的自动分发。分布式数据库场景下往往需要将应用程序中的SQL语句发送到某个指定的数据库节点执行。而原生的JDBC实现存在无法进行灵活调整连接的缺点,且无法应对分布式数据库场景中常见的数据分片、分布式事务等问题。以上缺点如果在应用程序中通过人工进行编写代码处理,操作会很繁琐并导致误码率增高,同时编码过程非常耗时、效率低下,极大的增加了应用程序开发维护成本。
[0029]基于此,本专利技术第一方面实施例提出一种分布式JDBC实现方法,如图1所示,包括:
[0030]S1,当接收到获取数据库连接的请求时,从第一配置文件中获取各个分布式数据库节点的地址并进行储存;
[0031]S2,当接收到调用执行SQL语句的请求时,从第二配置文件中获取SQL语句模板,并基于SQL语句模板中设置的分片键,连接对应的分布式数据库节点。
[0032]采用本专利技术实施例,仅需要通过在配置文件中配置的数据库节点数量和各个节点
的连接地址,以及SQL语句的模板,就可以通过模板中配置的partitionKey(分片键)进行数学运算并获取相应连接。以此实现对分布式数据库场景的各个节点进行自动分发。用户无需根据SQL进行手动的分配数据库连接,因此可以极大降低分布式数据库应用程序开发者的开发复杂度。
[0033]在上述实施例的基础上,进一步提出各变型实施例,在此需要说明的是,为了使描述简要,在各变型实施例中仅描述与上述实施例的不同之处。
[0034]根据本专利技术的一些实施例,所述从第一配置文件中获取各个分布式数据库节点的地址储存起来,包括:
[0035]从第一配置文件中获取各个分布式数据库节点的地址,并存储至第一数组;
[0036]设置第一数据结构,所述第一数据结构包括数据库连接属性位、连接的地址位、以及连接状态位;
[0037]从所述第一数组中获取各个分布式数据库节点的地址,并存入所述第一数据结构的连接的地址位,并对应设置连接状态位以及数据库连接属性位。
[0038]根据本专利技术的一些实施例,所述从第二配置文件中获取SQL语句模板,包括:
[0039]设置第二数据结构,所述第二数据结构包括SQL语句位、是否有效判定位、以及参数信息位;
[0040]将从第二配置文件中获取的SQL语句模板存放至所述第二数据结构的SQL语句位,并对应设置是否有效判定位。
[0041]根据本专利技术的一些实施例,所述基于SQL语句模板本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种分布式JDBC实现方法,其特征在于,包括:当接收到获取数据库连接的请求时,从第一配置文件中获取各个分布式数据库节点的地址并进行储存;当接收到调用执行SQL语句的请求时,从第二配置文件中获取SQL语句模板,并基于SQL语句模板中设置的分片键,连接对应的分布式数据库节点。2.如权利要求1所述的方法,其特征在于,所述从第一配置文件中获取各个分布式数据库节点的地址储存起来,包括:从第一配置文件中获取各个分布式数据库节点的地址,并存储至第一数组;设置第一数据结构,所述第一数据结构包括数据库连接属性位、连接的地址位、以及连接状态位;从所述第一数组中获取各个分布式数据库节点的地址,并存入所述第一数据结构的连接的地址位,并对应设置连接状态位以及数据库连接属性位。3.如权利要求2所述的方法,其特征在于,所述从第二配置文件中获取SQL语句模板,包括:设置第二数据结构,所述第二数据结构包括SQL语句位、是否有效判定位、以及参数信息位;将从第二配置文件中获取的SQL语句模板存放至所述第二数据结构的S...

【专利技术属性】
技术研发人员:郑晓军矫顺田冯路苗健高雪玉张鲁敏
申请(专利权)人:瀚高基础软件股份有限公司
类型:发明
国别省市:

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

1