CN110502560A - 一种数据库连接参数封装的方法及服务器 - Google Patents
一种数据库连接参数封装的方法及服务器 Download PDFInfo
- Publication number
- CN110502560A CN110502560A CN201910746192.3A CN201910746192A CN110502560A CN 110502560 A CN110502560 A CN 110502560A CN 201910746192 A CN201910746192 A CN 201910746192A CN 110502560 A CN110502560 A CN 110502560A
- Authority
- CN
- China
- Prior art keywords
- key
- data
- connection
- value pair
- parameter
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000005538 encapsulation Methods 0.000 title claims abstract description 26
- 238000012545 processing Methods 0.000 claims description 6
- 230000011218 segmentation Effects 0.000 claims description 6
- 238000004422 calculation algorithm Methods 0.000 claims description 5
- 241000208340 Araliaceae Species 0.000 claims description 4
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 claims description 4
- 235000003140 Panax quinquefolius Nutrition 0.000 claims description 4
- 238000004891 communication Methods 0.000 claims description 4
- 235000008434 ginseng Nutrition 0.000 claims description 4
- 230000006870 function Effects 0.000 description 5
- 238000004806 packaging method and process Methods 0.000 description 5
- 238000000605 extraction Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- WBEJYOJJBDISQU-UHFFFAOYSA-N 1,2-Dibromo-3-chloropropane Chemical compound ClCC(Br)CBr WBEJYOJJBDISQU-UHFFFAOYSA-N 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例涉及数据库领域,公开了一种数据库连接参数封装的方法及服务器,通过接收配置信息,配置信息包含连接参数;提取配置信息中的连接参数;获取连接对象,连接对象包括数据库连接对象和/或连接池连接对象,连接对象配置有参数类型;选择与参数类型对应的连接参数分配至连接对象。即根据获取的数据库连接对象和连接池连接对象中参数类型进行连接参数的动态分配,从而将配置信息中的连接参数完全暴露给数据库,提升了业务使用的灵活性。
Description
技术领域
本发明涉及数据库领域,更具体地说是涉及一种数据库连接参数封装的方法及服务器。
背景技术
随着互联网数据的快速增长,数据库作为互联网数据的存储介质,承担着越来越多的终端对数据库的访问,数据库连接(Java DataBase Connectivity,JDBC)是终端和数据库的交互通道。
其中,数据库连接池是用于创建和管理数据库连接的一种缓冲池,负责分配、管理和释放数据库连接。数据库连接池中预先放入一定数量的连接,当需要建立数据库连接时,只需要从连接池中取出一个连接,使用完毕之后放回连接池。
目前,市面上很多的数据库连接池只配置了其本身的连接参数,导致一些业务使用很不方便。
发明内容
本发明实施例提供一种数据库连接参数封装的方法及服务器,其提升了业务使用的灵活性的技术问题。
为了解决上述技术问题,本发明提供以下技术方案:
在第一方面,本发明实施例提供了一种数据库连接参数封装的方法,所述方法包括:
接收配置信息,所述配置信息包含连接参数;
提取所述配置信息中的所述连接参数;
获取连接对象,所述连接对象包括数据库连接对象和/或连接池连接对象,所述连接对象配置有参数类型;
选择与所述参数类型对应的连接参数分配至所述连接对象。
可选地,所述连接参数为键值对格式的键值对数据,所述提取所述配置信息中的所述连接参数,包括:
根据数据分割算法,提取所述配置信息中的所述键值对数据;
解析所述键值对数据。
可选地,所述解析所述键值对数据,包括:
预设键值对对照表;
将所述键值对数据解析为键数据和与其对应的值数据,并将所述键数据和所述值数据一一对应的写入所述对照表。
可选地,所述数据库连接对象中包含有原生参数,所述选择与所述参数类型对应的连接参数分配至所述连接对象,包括:
解析所述数据库连接对象中的所述原生参数;
将对应的所述键值对数据分配给所述原生参数。
可选地,所述将对应的所述键值对数据分配给所述原生参数,包括:
遍历所述键值对对照表,获得与所述原生参数类型相同的所述键数据;
将与所述键数据对应的所述值数据赋值给所述原生参数。
可选地,所述连接池连接对象中包含有连接池参数,所述选择与所述参数类型对应的连接参数分配至所述连接对象,还包括:
解析所述连接池连接对象中的所述连接池参数;
将对应的所述键值对数据分配给所述连接池参数。
可选地,所述将对应的所述键值对数据分配给所述连接池参数,包括:
遍历所述键值对对照表,获得与所述连接池参数类型相同的所述键数据;
将与所述键数据对应的所述值数据赋值给所述连接池参数。
可选地,所述方法还包括:
删除所述键值对对照表。
可选地,所述配置信息支持动态配置。
在第二方面,本发明实施例提供一种服务器,所述服务器包括:
至少一个处理器;以及
与所述至少一个处理通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令程序,所述指令程序被所述至少一个处理器执行,以使所述至少一个处理器执行以上所述数据库连接参数封装的方法。
基于上述技术方案,本申请实施例提供了一种数据库连接参数封装的方法及服务器,通过接收配置信息,所述配置信息包含连接参数;提取所述配置信息中的所述连接参数;获取连接对象,所述连接对象包括数据库连接对象和/或连接池连接对象,所述连接对象配置有参数类型;选择与所述参数类型对应的连接参数分配至所述连接对象。即根据获取的数据库连接对象和连接池连接对象中参数类型进行连接参数的动态分配,从而将配置信息中的连接参数完全暴露给数据库,提升了业务使用的灵活性。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1为本发明实施例提供的一种数据库连接参数封装的方法的示例性的***架构图;
图2为本发明实施例提供的一种数据库连接参数封装的方法的流程图;
图3为本发明实施例提供的一种数据库连接参数封装的方法的流程图;
图4为本发明实施例提供的一种数据库连接参数封装的方法的流程图;
图5为本申请实施例提供的键值对对照表;
图6为本发明实施例提供的一种数据库连接参数封装的方法的流程图;
图7为本发明实施例提供的一种数据库连接参数封装的方法的流程图;
图8为本发明实施例提供的一种数据库连接参数封装的方法的流程图;
图9是本发明实施例提供的一种服务器的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
请参阅图1,图1为本发明实施例提供的一种数据库连接参数封装的方法的示例性的***架构图,***架构100包括至少一个终端设备101、网络102、服务器103以及数据库104。网络102用于在终端设备101和服务器103之间以及服务器103和数据库104之间提供通信链路的介质。网络102可以包括各种连接类型,比如有线、无线通信链路或者光纤电缆等。
终端设备101可以是有显示屏并且支持购物类应用或者网页浏览的各种电子设备,其包括但不限于个人计算机、ipad电脑或智能手机等。
在一些实施例中,终端设备101可以是安装在如上述设备上的应用程序,例如网页浏览应用、购物类应用、搜索类应用、社交平台软件以及邮箱客户端等。用户通过安装在如上述设备上的应用程序向服务器发送连接数据库的请求,其中,访问请求中携带有连接数据库的配置信息。
服务器103可以是提供各种服务的服务器,例如对终端设备101上安装的应用程序访问数据库提供支持的数据库连接服务器。数据库连接服务器可以包括数据库连接池,并对数据库连接池中的数据库连接进行维护和管理,还可以对来自终端设备101的数据库访问请求等数据进行分析和处理,也可以根据接收到的数据库访问请求向数据库104发送连接请求。并接收从数据库104返回的消息,将终端设备101的数据库访问请求对应的处理结果(例如连接数据库成功)反馈给终端设备101。
数据库104可以是存储各种类型数据的数据库,例如存储有终端设备101上安装的应用程序所需要的数据,通过数据库连接与终端设备101连接后,允许上述终端设备访问数据库。数据库104可以接受服务器103发送的访问请求,并对上述的访问请求进行分析和处理,并将处理结果返回至服务器103。
需要说明的是,本申请实施例所提供的数据库连接参数封装的方法一般由服务器103执行。
应该理解的,图1中的终端设备、网络、服务器以及数据库的数目仅仅是示意性的,根据实际的需要,可以具有任意数量的终端设备、网络、服务器以及数据库。
请继续参看图2,图2为本发明实施例提供的一种数据库连接参数封装的方法的流程图,该方法包括以下步骤:
步骤21、接收配置信息,所述配置信息包含连接参数;
配置信息是用于存放连接参数的文件,用户在终端设备向服务器发起数据库访问请求时,该数据库访问请求中携带有配置信息,配置信息中定义的参数为连接数据库的连接参数,比如数据库账户、密码、字符编码、连接超时时间以及读取超时时间等,服务器通过这些连接参数向数据库发起连接请求。
可以理解的,配置信息文件为java工程的普通文件,比如使用*.xml、*.properties等文件作为配置信息文件。
步骤22、提取所述配置信息中的所述连接参数;
步骤23、获取连接对象,所述连接对象包括数据库连接对象和/或连接池连接对象,所述连接对象配置有参数类型;
连接对象是服务器用于向数据库建立物理连接的应用程序编程接口(Application Programming Interface,API),通过连接对象建立与数据库之间的连接。在建立连接之前,需要为连接对象的相关属性参数进行幅值。
数据库连接(Java DataBase Connectivity,jdbc)是用于与数据库建立连接的一种原生方式,是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。数据库连接对象即jdbc对象,jdbc对象用来指示使用jdbc的连接方式向数据库建立连接。其中,获取jdbc对象可以通过DriverManager.getConnection()的方式获得。
连接池是在jdbc基础上做的封装,用于分配、管理和释放数据库连接。连接池将数据库连接作为对象存储在内存中,当用户需要访问数据库时,通过获取连接池中的空闲数据库连接作为连接对象建立连接。获取数据库连接对象可以通过dataSource.getConnection()的方式获得。
步骤24、选择与所述参数类型对应的连接参数分配至所述连接对象。
根据数据库连接方式获取与该连接方式对应的连接对象,不同的连接对象其所需的连接参数的类型也不尽相同。在本申请中,通过获取连接对象中参数的类型,将与所述参数类型对应的连接参数分配至所述连接对象。
在本实施例中,接收到配置信息后,提取配置信息中的连接参数,根据获取的连接对象中的参数需求分配对应的连接参数,其中,连接对象包括数据库连接对象和连接池连接对象。即根据获取的数据库连接对象和连接池连接对象中参数类型进行连接参数的动态分配,从而将配置信息中的连接参数完全暴露给数据库,提升了业务使用的灵活性。
在实际应用中,连接对象中定义的连接参数有很多,比如有数据库账户、密码、字符编码、连接超时时间以及读取超时时间等等,这些连接参数都包含在配置信息中。在一些实施例中,所述连接参数为键值对格式的键值对数据,请参阅图3,图3为本发明实施例提供的一种数据库连接参数封装的方法的流程图,步骤22还包括以下步骤:
步骤221、根据数据分割算法,提取所述配置信息中的所述键值对数据;
键值(Key-Value)对是一种数据存储格式,其通过一个主键(Key)可以快速唯一的定位到一个键值(Value),该键值对数据存储于配置信息的文本文件中。其中,配置信息中包含有至少一条键值对结构的键值对数据,例如键值对数据url=jdbc:mysql://127.0.0.1.3306/day08,该键值对数据用于指示键值对中键数据唯一对应的值。相邻的两个键值对数据之间设置有分割符,分割符可以但不限于是字符“;”或“,”。
数据分割算法是指将文本数据根据预设的分割符进行数据分块。遍历出文本数据中的设置的符号分割符,将相邻两个符号分割符之间的数据作为一块数据,从而完成数据块的提取。在本申请中,数据块指的是一个键值对数据。
步骤222、解析所述键值对数据。
根据上述步骤提取出键值对数据后,将提取的键值对数据根据其结构特点将数据解析成连接对象中所需的数据。
在本发明实施例中,通过数据分割算法,即遍历出文本数据中的预设符号分隔符,将相邻两个符号分割符之间的数据作为一块数据,并解析提取的键值对数据,从而将文本中的键值对数据转换成连接对象中所需的数据。
为了能更好的将解析的数据进行存储和读取,在一些实施例中,请参阅图4,图4为本发明实施例提供的一种数据库连接参数封装的方法的流程图,所述步骤222还包括以下步骤:
步骤2221、预设键值对对照表;
键值对对照表是用于存储键值对数据,通过建立键值对对照表以将配置信息文件中的所有连接参数以表格的形式进行一一对应的存储。请参阅图5,图5为本申请实施例提供的键值对对照表,对照表根据键值对的属性定义了键数据(Key_X)和与其对应的值数据(Value_X)。
需要说明的是,图5中列举的键值对数据仅仅是示意性的,根据实际的需要,可以调整、键数据以及与其对应的值数据。
步骤2222、将所述键值对数据解析为键数据和与其对应的值数据,并将所述键数据和所述值数据一一对应的写入所述对照表。
遍历配置信息文件并顺序提取出其包含的键值对数据,根据键值对的结构特性,即键值对中包含的两个数据通过符号“=”连接起来,识别出位于两个数据之间的连接符号“=”,将连接符号“=”之前的数据作为键数据写入键值对对照表中键数据(Key_X)一列,并将连接符号“=”之后的数据作为值数据写入键值对对照表中与键数据对应的值数据(Value_X)位置,从而将连接参数写入到对照表中。
在本实施例中,通过建立键值对对照表,并根据键值对的结构特性,解析出键值对中的键数据和与其对应的值数据,并将键数据和值数据存入对照表中对应的位置,将连接参数写入到对照表中,从而完成了键值对数据的存储,通过对照表的形式存储键值对格式的连接数据,提高了连接参数的查询效率。
不同的数据库连接方式定义了不同的连接对象,其连接对象中配置的连接参数也不尽相同,在一些实施例中,请参阅图6,图6为本发明实施例提供的一种数据库连接参数封装的方法的流程图,所述数据库连接对象中包含有原生参数,步骤24中包括以下步骤:
步骤241、解析所述数据库连接对象中的所述原生参数;
由上可知,数据库连接对象用于与数据库建立物理连接,获取数据库连接对象可以通过DriverManager.getConnection()来实现,根据不同的业务需求,连接对象的定义也有区别。比如DriverManager.getConnection(String url,String username,Stringpassword)和DriverManager.getConnection(String url),上述两个对象均为数据库连接对象,根据其定义的连接参数,前者实现的效果为连接并登陆指定的数据库,后者仅实现了数据库连接。
jdbc为数据库连接的其中一种方式,其jdbc对象中配置的连接参数为原生参数,服务器获取到jdbc对象后,根据该jdbc对象得到其连接数据库所需的原生参数,比如DriverManager.getConnection(String url,String username,String password),其所需的原生参数有字符类型的url、username以及password,用于指定连接的数据库的路径,以及登录该数据库的用户名和密码。
步骤242、将对应的所述键值对数据分配给所述原生参数。
原生参数是从jdbc对象中获取的连接数据库的连接参数,该原生参数的值是由客户端根据业务需求定义在配置信息中的。根据键值对对照表的建表原理可知,对照表中的键数据(Key_X)与该原生参数对应,即与该键数据(Key_X)唯一对应的值数据(Value_X)即为该原生参数的值。
在本实施例中,通过获取数据库连接对象(jdbc对象)中的原生参数,以原生参数作为键数据(Key_X)查询对照表,获取该键数据(Key_X)唯一对应的值数据(Value_X)的值作为该原生参数的值,从而获取连接对象中原生参数的赋值。
以原生参数作为键数据(Key_X)查询键值对对照表,请参阅图7,图7为本发明实施例提供的一种数据库连接参数封装的方法的流程图,步骤242还包括以下步骤:
步骤2421、遍历所述键值对对照表,获得与所述原生参数类型相同的所述键数据;
遍历所述键值对对照表即以该对照表中定义的其中一个数据维度作为遍历路径进行对照表的遍历。在本申请中,以原生参数作为键数据(Key_X),即以键数据(Key_X)作为遍历的维度,遍历出与原生参数相同的键数据(Key_X)。请参阅图5,例如,原生参数为url,那么以该原生参数作为键数据(Key_X)遍历图5所示的键值对对照表,当遍历至Key_X=url,即遍历出与原生参数类型相同的键数据。
步骤2422、将与所述键数据对应的所述值数据赋值给所述原生参数。
根据键值对对照表的定义,一个键数据(Key_X)唯一对应一个值数据(Value_X),根据以上的遍历结果,将遍历获取的与原生参数类型相同的键数据(Key_X)唯一对应一个值数据(Value_X)幅值给原生参数。
在本实施例中,根据键值对对照表的定义,以原生参数作为键数据(Key_X)遍历键值对对照表,将将遍历获取的与原生参数类型相同的键数据(Key_X)唯一对应一个值数据(Value_X)幅值给原生参数,从而完成了对原生参数的幅值。
连接池作为连接数据库最通用的一种方式,其连接对象中也定义了不同的连接参数,请继续参看图6,所述数据库连接对象中包含有连接池参数,步骤24中还包括以下步骤:
步骤243、解析所述连接池连接对象中的所述连接池参数;
连接池就像一个连接容器,在连接池用存放有一定数量的与数据库的物理连接。在Java中常用的数据库连接池有以下几种:DBCP连接池、Druid连接池、c3p0连接池以及proxool连接池。连接池的配置参数可以分为基本配置、关键配置和性能配置等,这些参数都称之为连接池参数,一般的,比如用户名(username)、密码(password)和数据库路径(url)等参数为基本配置参数,最小连接数(minIdle)、最大连接数(maxTotal)等参数为关键配置参数等。
通过连接池进行数据库连接,需要根据用户定义的配置信息的数据对该连接方式的连接参数进行幅值。
步骤244、将对应的所述键值对数据分配给所述连接池参数。
连接池参数是从连接池对象中获取的连接数据库的连接参数,该连接池参数的值是由客户端根据业务需求定义在配置信息中的。根据键值对对照表的建表原理可知,对照表中的键数据(Key_X)与该连接池参数对应,即与该键数据(Key_X)唯一对应的值数据(Value_X)即为该连接池参数的值。
在本实施例中,通过获取连接池连接对象中的连接池参数,以连接池参数作为键数据(Key_X)查询对照表,获取该键数据(Key_X)唯一对应的值数据(Value_X)的值作为该连接池参数的值,从而获取连接池连接对象中连接池参数的赋值。
以连接池参数作为键数据(Key_X)查询键值对对照表,请参阅图8,图8为本发明实施例提供的一种数据库连接参数封装的方法的流程图,步骤244还包括以下步骤:
步骤2441、遍历所述键值对对照表,获得与所述连接池参数类型相同的所述键数据;
遍历所述键值对对照表即以该对照表中定义的其中一个数据维度作为遍历路径进行对照表的遍历。在本申请中,以连接池参数作为键数据(Key_X),即以键数据(Key_X)作为遍历的维度,遍历出与连接池参数相同的键数据(Key_X)。请参阅图5,例如,连接池参数为Connectiong Timeout,那么以该连接池参数作为键数据(Key_X)遍历图5所示的键值对对照表,当遍历至Key_X=Connectiong Timeout,即遍历出与连接池参数类型相同的键数据。
步骤2442、将与所述键数据对应的所述值数据赋值给所述原生参数。
根据键值对对照表的定义,一个键数据(Key_X)唯一对应一个值数据(Value_X),根据以上的遍历结果,将遍历获取的与连接池参数类型相同的键数据(Key_X)唯一对应一个值数据(Value_X)幅值给连接池参数。
在本实施例中,根据键值对对照表的定义,以连接池参数作为键数据(Key_X)遍历键值对对照表,将将遍历获取的与连接池参数类型相同的键数据(Key_X)唯一对应一个值数据(Value_X)幅值给连接池参数,从而完成了对连接池参数的幅值。
通过获取连接对象中连接参数的配置,将对照表中的数据赋值给对应的连接参数后,在一些实施例中,该方法还包括:删除所述键值对对照表。
建立键值对对照表是用于存储从配置信息中解析出来的连接数据,并将数据赋值给连接对象中的配置的连接参数。完成赋值后的对照表,即实现了连接数据的存储和读取功能后,需要将其进行删除,以防止数据误操作,也可以减轻服务器的存储压力。
在另一些实施例中,配置信息中的键值对数据可以根据不同的业务进行动态配置。比如,通过获取DriverManager.getConnection连接对象来连接数据库,若仅是进行数据库连接,则配置信息中只需要定义数据库路径(url)即可;若需要登录该数据库,则配置信息中至少需要定义数据库路径(url)、用户名(username)以及密码(password)。
在本实施例中,根据业务需求动态调节配置信息中的连接参数,从而提高了连接数据库的灵活性。
在一些实施例中,请参阅图9,图9是本申请实施例提供执行上述数据库连接参数封装方法的一种服务器300的硬件结构示意图,如图9所示,该服务器300包括:
一个或多个处理器301以及存储器302,图9中以一个处理器301为例。
处理器301和存储器302可以通过总线或者其他方式连接,图9中以通过总线连接为例。
存储器302作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本申请实施例中的数据库连接参数封装方法对应的程序指令。处理器301通过运行存储在存储器302中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例数据库连接参数封装的方法。
存储器302可以包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需要的应用程序;存储数据区可存储根据数据库连接参数封装方法的使用所创建的数据等。此外,存储器302可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
所述一个或者多个模块存储在所述存储器302中,当被所述一个或者多个处理器301执行时,执行上述任意方法实施例中的数据库连接参数封装方法,例如,执行以上描述的图2至图8的方法步骤。
本申请实施例的电子设备以多种形式存在,包括但不限于:
(1)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、***总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
(2)其他具有数据交互功能的电子装置。
本申请实施例提供了一种非易失性计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行,例如,执行以上描述的图2至图8的方法步骤。
本申请实施例提供了一种计算机程序产品,包括存储在非易失性计算机可读存储介质上的计算程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时时,使所述计算机执行上述任意方法实施例中的数据库连接参数封装方法,例如,执行以上描述的图2至图8的方法步骤。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
通过以上的实施方式的描述,本领域普通技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明,它们没有在细节中提供;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (10)
1.一种数据库连接参数封装的方法,其特征在于,所述方法包括:
接收配置信息,所述配置信息包含连接参数;
提取所述配置信息中的所述连接参数;
获取连接对象,所述连接对象包括数据库连接对象和/或连接池连接对象,所述连接对象配置有参数类型;
选择与所述参数类型对应的连接参数分配至所述连接对象。
2.根据权利要求1所述的方法,其特征在于,所述连接参数为键值对格式的键值对数据,所述提取所述配置信息中的所述连接参数,包括:
根据数据分割算法,提取所述配置信息中的所述键值对数据;
解析所述键值对数据。
3.根据权利要求2所述的方法,其特征在于,所述解析所述键值对数据,包括:
预设键值对对照表;
将所述键值对数据解析为键数据和与其对应的值数据,并将所述键数据和所述值数据一一对应的写入所述对照表。
4.根据权利要求1所述的方法,其特征在于,所述数据库连接对象中包含有原生参数,所述选择与所述参数类型对应的连接参数分配至所述连接对象,包括:
解析所述数据库连接对象中的所述原生参数;
将对应的所述键值对数据分配给所述原生参数。
5.根据权利要求4所述的方法,其特征在于,所述将对应的所述键值对数据分配给所述原生参数,包括:
遍历所述键值对对照表,获得与所述原生参数类型相同的所述键数据;
将与所述键数据对应的所述值数据赋值给所述原生参数。
6.根据权利要求4所述的方法,其特征在于,所述连接池连接对象中包含有连接池参数,所述选择与所述参数类型对应的连接参数分配至所述连接对象,还包括:
解析所述连接池连接对象中的所述连接池参数;
将对应的所述键值对数据分配给所述连接池参数。
7.根据权利要求6所述的方法,其特征在于,所述将对应的所述键值对数据分配给所述连接池参数,包括:
遍历所述键值对对照表,获得与所述连接池参数类型相同的所述键数据;
将与所述键数据对应的所述值数据赋值给所述连接池参数。
8.根据权利要求6所述的方法,其特征在于,所述方法还包括:
删除所述键值对对照表。
9.根据权利要求1所述的方法,其特征在于,所述配置信息支持动态配置。
10.一种服务器,其特征在于,所述服务器包括:
至少一个处理器;以及
与所述至少一个处理通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令程序,所述指令程序被所述至少一个处理器执行,以使所述至少一个处理器执行以上权利要求1-9任意一项所述的数据库连接参数封装的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910746192.3A CN110502560A (zh) | 2019-08-13 | 2019-08-13 | 一种数据库连接参数封装的方法及服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910746192.3A CN110502560A (zh) | 2019-08-13 | 2019-08-13 | 一种数据库连接参数封装的方法及服务器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110502560A true CN110502560A (zh) | 2019-11-26 |
Family
ID=68587376
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910746192.3A Pending CN110502560A (zh) | 2019-08-13 | 2019-08-13 | 一种数据库连接参数封装的方法及服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110502560A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113360478A (zh) * | 2021-06-25 | 2021-09-07 | 浪潮云信息技术股份公司 | 一种多数据源集成方法 |
CN116244361A (zh) * | 2022-12-23 | 2023-06-09 | 北京柏睿数据技术股份有限公司 | 一种数据库连接动态持久化处理的方法及*** |
CN117539949A (zh) * | 2024-01-10 | 2024-02-09 | 腾讯科技(深圳)有限公司 | 数据库访问请求的处理方法、装置、电子设备和存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103176782A (zh) * | 2011-12-22 | 2013-06-26 | 北大方正集团有限公司 | 数据库访问的方法和装置 |
CN104915412A (zh) * | 2015-06-05 | 2015-09-16 | 北京京东尚科信息技术有限公司 | 一种动态管理数据库连接的方法及*** |
-
2019
- 2019-08-13 CN CN201910746192.3A patent/CN110502560A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103176782A (zh) * | 2011-12-22 | 2013-06-26 | 北大方正集团有限公司 | 数据库访问的方法和装置 |
CN104915412A (zh) * | 2015-06-05 | 2015-09-16 | 北京京东尚科信息技术有限公司 | 一种动态管理数据库连接的方法及*** |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113360478A (zh) * | 2021-06-25 | 2021-09-07 | 浪潮云信息技术股份公司 | 一种多数据源集成方法 |
CN113360478B (zh) * | 2021-06-25 | 2023-03-10 | 浪潮云信息技术股份公司 | 一种多数据源集成方法 |
CN116244361A (zh) * | 2022-12-23 | 2023-06-09 | 北京柏睿数据技术股份有限公司 | 一种数据库连接动态持久化处理的方法及*** |
CN116244361B (zh) * | 2022-12-23 | 2023-10-10 | 北京柏睿数据技术股份有限公司 | 一种数据库连接动态持久化处理的方法及*** |
CN117539949A (zh) * | 2024-01-10 | 2024-02-09 | 腾讯科技(深圳)有限公司 | 数据库访问请求的处理方法、装置、电子设备和存储介质 |
CN117539949B (zh) * | 2024-01-10 | 2024-04-12 | 腾讯科技(深圳)有限公司 | 数据库访问请求的处理方法、装置、电子设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2007323689B2 (en) | Creating data in a data store using a dynamic ontology | |
US9122510B2 (en) | Querying and managing computing resources in a networked computing environment | |
CN106980669B (zh) | 一种数据的存储、获取方法及装置 | |
CN109409119A (zh) | 数据操作方法和装置 | |
CN110502560A (zh) | 一种数据库连接参数封装的方法及服务器 | |
US9843625B2 (en) | System and method for aggregating and providing data from enterprise systems to mobile devices | |
CN103927314B (zh) | 一种数据批量处理的方法和装置 | |
CN104536965B (zh) | 一种大数据条件下的数据查询展示***及方法 | |
CN110032886A (zh) | 资源权限管理的方法及设备 | |
CN106294695A (zh) | 一种面向实时大数据搜索引擎的实现方法 | |
CN102364894A (zh) | 一种配置数据文件的下发方法及网管设备 | |
CN109241384A (zh) | 一种科研信息的可视化方法及装置 | |
CN107506218A (zh) | 一种配置文件的管理方法及管理*** | |
WO2008099393A2 (en) | Service provisioning system | |
CN110798445B (zh) | 公共网关接口测试方法、装置、计算机设备及存储介质 | |
CN111538774A (zh) | 数据存储及展示方法、***、设备及存储介质 | |
US9330140B1 (en) | Transient virtual single tenant queries in a multi-tenant shared database system | |
CN112217656A (zh) | Sd-wan***中的网络设备的配置信息同步方法和装置 | |
CN110289975A (zh) | 公众号消息群发管理***及方法 | |
CN111339743B (zh) | 一种账号生成的方法和装置 | |
Naik | Connecting Google cloud system with organizational systems for effortless data analysis by anyone, anytime, anywhere | |
CN111984505A (zh) | 一种运维数据采集引擎及采集方法 | |
CN117171108B (zh) | 一种虚拟模型映射方法和*** | |
CN106888264A (zh) | 一种数据交换方法和装置 | |
CN105872731A (zh) | 数据处理的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191126 |
|
RJ01 | Rejection of invention patent application after publication |