CN102739654B - 一种实现应用程序访问数据库的方法 - Google Patents
一种实现应用程序访问数据库的方法 Download PDFInfo
- Publication number
- CN102739654B CN102739654B CN201210187560.3A CN201210187560A CN102739654B CN 102739654 B CN102739654 B CN 102739654B CN 201210187560 A CN201210187560 A CN 201210187560A CN 102739654 B CN102739654 B CN 102739654B
- Authority
- CN
- China
- Prior art keywords
- proxy server
- jdbc
- database
- behalf
- results
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 40
- 230000005540 biological transmission Effects 0.000 claims description 13
- 238000004891 communication Methods 0.000 claims description 7
- 238000005516 engineering process Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 10
- 238000011161 development Methods 0.000 description 5
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 238000007667 floating Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000007423 decrease Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 235000004240 Triticum spelta Nutrition 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 description 1
- 238000010561 standard procedure Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Landscapes
- Computer And Data Communications (AREA)
Abstract
一种实现应用程序访问数据库的方法,包括:在防火墙的数据库侧将代理服务器的war包部署到中间件中;在防火墙的应用程序侧通过配置所述代理服务器的url加入用于访问所述代理服务器的代理JDBC驱动;所述的代理JDBC驱动调用webservice接口向所述的代理服务器发送数据库访问请求;所述的代理服务器接收所述的数据库访问请求,并将所述的数据库访问请求转发给所述的数据库;所述的代理服务器接收所述数据库根据所述数据库访问请求生成的返回结果,并将所述的返回结果输出给所述的代理JDBC驱动;所述的代理JDBC驱动接收所述的返回结果。通过本发明可以在不进行额外的程序修改的条件下,实现应用程序对数据库的访问,完成防火墙安全穿越。
Description
技术领域
本发明是关于网络通信技术,特别是关于一种实现应用程序访问数据库的方法。
背景技术
应用程序经常要与数据库进行交互,一般情况下,数据库服务器与应用服务器在同一网络环境中,二者可直接进行连接。但在某些情况下,数据库服务器与应用服务器不在同一网络环境,两者之间存在防火墙的阻隔。
为解决应用程序与数据库不在同一网络环境时二者的连接问题,现有技术中通常采用下面几种做法:
1 采取在防火墙开放端口,允许应用程序直接连接到数据库的方法。
如图1所示,应用程序访问数据库服务时,一个常规的结构可以划分为若干层,最终通过数据通信层实现应用程序与数据库服务的通信。对于在不同网络环境的应用程序和数据库服务,最直接的连接方式就是通过开发防火墙的端口(如图2所示),使得应用程序有能力直接连接到数据库服务。这种方式不需要修改应用程序以及数据库服务的结构。首先,双方需要约定访问协议以及访问数据库的端口号,然后数据库服务器一方根据约定好的协议以及端口号在防火墙上设置开放权限以及网络内部的IP映射等设置。最后应用程序方根据开发的端口修改应用程序中的配置,达到连接数据库服务的目的。
该方案是跨网络环境访问数据库的相对比较直观的实现方式。但是该方案普遍存在以下几个问题:
修改防火墙配置的工作复杂,在复杂的网络环境中,打开特定的端口是一个非常复杂的协调和管理配置的工程。修改网络防火墙的配置增加了开放的协议和端口,可能引起因配置不当而带来的额外的安全隐患。同时将数据库暴露在应用程序的同时,也暴露给其他可能的恶意程序,如果安全配置做的不够完善,则可能引入新的漏洞。
2 双方约定数据的中间格式,应用程序并不直接与数据库服务进行通信,而是由数据库方提供接口,再由应用程序方对接口进行调用,如图3所示。此方案比较常见的实现方式是双方约定数据格式,提供临时存储空间,由数据库服务方将数据按照约定的数据格式提供到临时存储空间,再有应用程序访问临时存储空间,将数据读取下来。
此种方法虽然避免了与数据库服务直接连接,但是需要在数据库服务和应用程序服务端额外的开发应用进行吐数和取数,使得开发量增加,并且不具备可扩展性,可移植性。
3 数据库方提供数据访问接口,应用程序方针对数据访问接口进行定制开发,主动取数,如图4所示。此种方法不具备通用性,应用程序需要针对不同的接口进行不同的开发,涉及到的程序修改范围大,开发工作量大。当需求变更的时候需要重新开发。
发明内容
本发明提供一种实现应用程序访问数据库的方法,使得当数据库服务器与应用程序服务器不在同一网络时实现应用程序对数据库的访问。
为了实现上述目的,本发明提供一种实现应用程序访问数据库的方法,该方法包括:在防火墙的数据库侧将代理服务器的war包部署到中间件中;在防火墙的应用程序侧通过配置所述代理服务器的url加入用于访问所述代理服务器的代理JDBC驱动;所述的代理JDBC驱动调用webservice接口向所述的代理服务器发送数据库访问请求;所述的代理服务器接收所述的数据库访问请求,并将所述的数据库访问请求转发给所述的数据库;所述的代理服务器接收所述数据库根据所述数据库访问请求生成的返回结果,并将所述的返回结果输出给所述的代理JDBC驱动;所述的代理JDBC驱动接收所述的返回结果。
进一步地,所述的将代理服务器的war包部署到中间件中,包括:设定所述代理服务的访问名,设定所述中间件启动的端口号及配置所述代理服务器的数据源。
进一步地,所述的数据库访问请求包括:执行命令及查询命令。
进一步地,所述的代理服务器将所述的返回结果输出给所述的代理JDBC驱动,包括:对于执行命令,所述的代理服务器将所述的返回结果直接输出给所述的代理JDBC驱动;对于查询命令,所述的代理服务器将所述的返回结果序列化后输出给所述的代理JDBC驱动。
进一步地,将所述的返回结果序列化包括:将所述的返回结果转化为二进制数据。
进一步地,对于查询命令,所述的代理服务器将所述的返回结果序列化的过程中,根据所述url的大小对所述的返回结果进行分页,所述的代理服务器将所述的返回结果以页为单位输出给所述的代理JDBC驱动。
进一步地,对于查询命令,所述的代理JDBC驱动接收所述的返回结果的方式为分页接收。
进一步地,对于查询命令,所述的代理JDBC驱动接收所述的返回结果时,对接收到的返回结果进行反序列化,并遍历反序列化后的所有记录,当遍历到最后一条记录时,向所述的代理服务器发送后续数据获取请求。
进一步地,当所述的代理服务器接收到后续数据获取请求时,向所述的代理JDBC驱动发送下一页返回结果,如果所有的返回结果发送完毕,所述的代理服务器向所述的代理JDBC驱动返回空。
本发明实施例的有益效果在于,当数据库服务器与应用程序服务器不在同一网络时实现应用程序对数据库的访问,完成防火墙安全穿越。基于JDBC标准实现的驱动,使得应用程序无缝集成,不需要做额外的程序修改。代理JDBC驱动向服务器发送的请求经过加密,保证请求的保密性。自定义的可序列化结果集,使得传输过程中安全高效。传输结果集可根据网络状况设置结果集的压缩级别。传输结果集不是一次性传送到客户端代理驱动,而是分批次传输。每次传输的结果集的大小可以根据实际情况进行设置。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术中应用程序访问数据库的常规结构示意图;
图2为现有技术一中数据库访问的结构示意图;
图3为现有技术二中数据库访问的结构示意图;
图4为现有技术三中数据库访问的结构示意图;
图5为常规模式下应用程序对数据库的访问示意图;
图6为本发明应用程序访问数据库的结构示意图;
图7为本发明实施例实现应用程序访问数据库的方法流程图;
图8为本发明实施例代理服务器部署成功时的响应示意图;
图9为本发明实施例结果集的自定义格式示意图;
图10为本发明实施例布尔类型/字节类型的结果集中的数值结构示意图;
图11为本发明实施例整数类型/浮点类型的结果集中的数值结构示意图;
图12为本发明实施例长整数类型/双浮点类型的结果集中的数值结构示意图;
图13为本发明实施例字符串类型/字节数组类型的结果集中的数值结构示意图;
图14为本发明实施例分页接收结果集的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图5为常规模式下应用程序对数据库的访问示意图,如图5所示,当数据库服务器与应用程序服务器在同一网络环境时,应用程序服务器可直接通过JDBC驱动连接数据库,但是当数据库服务器与应用程序服务器不在同一网络环境时,应用程序服务器与数据库将被防火墙隔开。
本发明提供一种实现应用程序访问数据库的方法,用代理JDBC驱动代替图5中的JDBC驱动,并配置代理服务器的相关地址即可。代理服务器就可以被认为应用程序是所要连接的数据库,而对于代理服务器以外的其他网络部署环境则不需要理会,实现了对应用程序完全透明的访问方式。
在使用JAVA开发的应用程序中,与数据库进行通信的任务通常交给基于JDBC标准实现的数据库驱动来完成的。应用程序不需要针对某种数据库做特定的开发,而只是调用JDBC接口规范中提供的方法进行数据库操作即可。
本发明正是针对此特性,开发一套基于JDBC标准的数据库驱动(代理JDBC驱动),用于访问跨防火墙数据库。代理JDBC驱动通过修改于数据库的通信协议,使用webservices技术进行通信,使得代理JDBC驱动具有穿过防火墙的能力,并且不需要在应用程序端做过多的修改。
如图6所示应用程序只需要更换使用的数据库驱动(将JDBC驱动替换为代理JDBC驱动)而不需要做额外的操作,就具备了连接跨防火墙数据库的能力。在防火墙的服务器端,提供一个代理服务器,用于接收应用程序通过代理JDBC驱动发送的请求并转发给实际的数据库服务。代理JDBC驱动与代理服务器之间的通信通过基于HTTP协议的webservices请求,可以轻松的穿过防火墙(因为HTTP协议对于大部分防火墙而言都是被允许的,即使防火墙禁用了此协议,但由于HTTP协议本身的安全性,也可以通过简单的协商沟通而开放防火墙对此协议的限制,并且不会因此而带来额外的风险)。对于应用程序来说,代理服务器则可以认为是要连接的数据库,在应用程序中仅配置代理服务器的相关url即可,而不需要关系代理服务器如何与实际的数据库进行连接。
如图7所示,本实施例提供一种实现应用程序访问数据库的方法,该方法包括:
步骤S701:在防火墙的数据库侧将代理服务器的war包部署到中间件中。
在应用程序访问数据库之前,首先需要确定防火墙的HTTP协议以及端口(通常是80端口)是否打开,如果没有打开,则需要修改防火墙配置,开启HTTP协议及相应端口。
在数据库一侧部署代理服务器,包括:设定所述代理服务的访问名,设定所述中间件启动的端口号及配置所述代理服务器的数据源。首先修改代理服务器中war包的用户配置文件user.xml,登陆用户配置为user,登陆密码配置为password。代理服务器需要依赖于中间件的运行,比如tomcat,weblogic等。代理服务器的访问名例如可以设定为teapoy,中间件启动的端口号例如可以设定为80端口。需要配置代理服务器的数据源在这里就是实际要连接的数据库。不同的中间件配置数据源的方式不同。这里我们命名数据源的名称为ds,数据源的连接信息则是实际要连接的数据库的连接信息。配置好后并测试通过,则可以启动代理服务器。
代理服务器启动完毕后,在防火墙外侧,通过浏览器访问代理服务器的services路径,假设代理服务器所在物理机器的IP为192.168.1.1,则访问全路径为http://192.168.1.1:80/teapoy/services。如果收到图8中的响应,则说明代理服务器部署成功并且在防火墙外部可访问。
步骤S702:在防火墙的应用程序侧通过配置所述代理服务器的url加入用于访问所述代理服务器的代理JDBC驱动。
代理JDBC驱动是按照JDBC规范实现的一套数据库访问驱动程序。常规模式下,应用程序通过JDBC驱动访问数据库(如图5所示),当使用此方法访问跨防火墙数据库服务时,需要使用代理JDBC驱动来实现。
代理JDBC驱动的实现原理主要是通过修改底层通信协议以达到跨防火墙访问的目的。常规的JDBC驱动,通常使用如TCP/IP协议直接访问,但大部分情况下,防火墙会禁止此协议的访问。代理JDBC驱动,改用webservices技术,通过HTTP协议访问服务端。而防火墙对于HTTP协议,通常都是启用的。
应用程序中需要加入访问代理服务器的代理JDBC驱动的全名为com.jiuqi.teapoy.jdbc.TeapoyDriver。然后拼写访问代理服务器的url。代理JDBC驱动的url格式为:
jdbc:jiuqi:teapoy://[server]:[port];DataSource=[sourcename]; |
其中server表示代理服务器地址。代理JDBC驱动中不需要写协议名称,仅需要代理服务器的机器名(或IP),默认的服务名称为teapoy,可以省略;如果服务名称更改,则需要在服务器地址上加上”/服务名称”,例如:127.0.0.1/jdbcteapoy。Port代表服务端口号,默认为80,可以省略。Sourcename代表服务器配置的数据源名称。客户端访问的实际数据库。
根据上面代理服务器部署的例子,代理JDBC驱动的url写法应该为:
jdbc:jiuqi:teapoy://192.168.1.1:80/teapoy;DataSource=ds; |
如果需要指定其他参数,如返回结果(结果集)分页大小,结果集压缩级别等,则在url后面追加属性。
jdbc:jiuqi:teapoy://192.168.1.1:80/teapoy;DataSource=ds;buffer=4096;ziplevel=9 |
一个标准的最基本的通过JDBC访问数据库的方式为:
只要将className,url,username,password设置为相应的值,应用程序就可以获取到代理服务器的连接。
在应用程序中对连接的获取和管理方式有很多种,比如通过数据源配置连接池。但无论哪种方式,只要设置了上面提到的几个属性,即可获取到代理服务器的连接。
步骤S703:所述的代理JDBC驱动调用webservice接口向所述的代理服务器发送数据库访问请求。
数据库访问请求包括:执行命令、查询命令、查询元数据、获取数据库中的连接信息等JDBC支持的函数。本发明仅以执行命令及查询命令进行详细说明。
应用程序要进行执行及查询操作,需要调用执行命令及查询命令,在应用程序调用代理JDBC驱动执行命令及查询命令时,代理JDBC驱动接收到命令后,可以先将命令加密,然后调用webservices接口发送到代理服务器端。
步骤S704:所述的代理服务器接收所述的数据库访问请求,并将所述的数据库访问请求转发给所述的数据库。
当代理服务器接收到代理JDBC驱动发送的请求后,首先会对请求进行解密,得到SQL脚本,并且将SQL脚本交由实际连接的数据库执行。
步骤S705:所述的代理服务器接收所述数据库根据所述数据库访问请求生成的返回结果,并将所述的返回结果输出给所述的代理JDBC驱动。
对于执行命令,代理服务器将返回结果直接输出给所述的代理JDBC驱动;对于查询命令,代理服务器将返回结果序列化后输出给代理JDBC驱动。
对于查询命令,代理服务器将所述的返回结果序列化的过程中,根据创建的代理JDBC驱动与代理服务器之间连接时URL指定的返回结果(结果集)大小对结果集进行分页。代理服务器首先将查询的结果记录依次序列化到结果集中,并且判断结果集大小是否达到设置的结果集容量。当达到设置的容量时,代理服务器将序列化结果集发送到代理驱动中(即代理服务器将结果集以页为单位输出给代理JDBC驱动),并等待代理驱动获取下批数据的请求。
在序列化结果集时,代理服务器会对结果集进行压缩。在创建连接的时候,可以通过JDBC URL指定压缩的级别,代理服务器会根据这个级别对结果集进行压缩。
序列化结果集是代理服务器获取到数据库返回的基于JDBC标准的ResultSet对象后,对其进行转化为二进制数据以满足在网络中传输的目的的结果集。
如图9所示,结果集的格式为自定义格式,首先在结果集中的开头部分,使用一个字节记录数据集的版本号,以后如果数据集格式升级,则通过这个版本号进行区分。后面紧跟一个头信息数据段,用于附加一个结果集的额外信息。其中头四个字节记录了头信息数据段的长度,根据这个长度往后读取相应的字节数作为头信息的数据。
结果集中的数值,不同类型的数据将占用不同的字节数。并且用一个字节表示当前字段是否为空。不同类型的数据介绍如下:
如图10所示,布尔类型/字节类型的数值,使用两个字节表示。第一个字节表示是否为空。如果是0即为空,则该数据段结束,进入下一个数据段,以下的数据类型均有相同约定,不再赘述。如果不为空,读取下一个字节。
如图11所示,整数类型/浮点类型的数值,使用五个字节表示。如果不为空,则读取后四个字节。
如图12所示,长整数类型/双浮点类型的数值,使用九个字节表示。如果不为空,则读取后八个字节。
如图13所示,字符串类型/字节数组类型的数据,对于字符串类型的数据,首先按UTF-8字符编码转化为字节数据后进行存储。使用第一个字节表示是否为空,如果为空数据段结束。后四个字节表示字符串的字节长度Length。后面Length个字节为数据。
步骤S706:所述的代理JDBC驱动接收所述的返回结果。
对于查询命令,一次查询的结果集的记录数可能很多,不可能通过一次传输把所有的结果传输到代理驱动中,因此代理JDBC驱动接收结果集的方式为分页接收。
图14为本发明实施例分页接收结果集的流程图。代理JDBC驱动接收所述的返回结果时,对接收到的当前页的结果集进行反序列化,并遍历当前页反序列化后的所有记录,当遍历到当前页的最后一条记录时,向代理服务器发送后续数据获取请求。代理服务器接收到代理JDBC驱动发来的后续数据获取请求后,向代理JDBC驱动发送下一页数据。此时如果代理服务器返回另一批(下一页)结果集时,则表示还有后续数据。当所有数据全部发送完毕后,代理驱动再次发送获取数据的请求时,代理服务器向代理JDBC驱动返回空,表示此次查询结果发送完毕。
本发明实现应用程序访问数据库的方法是利用基于webservices技术和JDBC标准开发的代理驱动,为了解决在不同网络环境下跨防火墙访问数据库的一种通用实现方法,这种方法是可移植的,并且无需编码,可适用于任何环境。该方法避免了为了访问数据库而带来的复杂的网络配置,减少了沟通成本、实施成本,也减少了可能带来的安全隐患。同时,该方法不需要做额外的程序开发,只需要简单的部署即可实现,减少了因此而带来的开发成本。对于使用该方法的应用程序,仅仅需要替换一下连接数据库使用的JDBC驱动,并且配置代理服务器的相关地址即可。代理服务器就可以被认为应用程序是所要连接的数据库,而对于代理服务器以外的其他网络部署环境则不需要理会,实现了对应用程序完全透明的访问方式。
采用标准技术webservices和jdbc,可以最大限度减少对现有应用的修改和维护。
当数据库服务器与应用程序服务器不在同一网络时实现应用程序对数据库的访问,完成防火墙安全穿越。基于JDBC标准实现的驱动,使得应用程序无缝集成,不需要做额外的程序修改。代理JDBC驱动向服务器发送的请求经过加密,保证请求的保密性。自定义的可序列化结果集,使得传输过程中安全高效。传输结果集可根据网络状况设置结果集的压缩级别。传输结果集不是一次性传送到客户端代理驱动,而是分批次传输。每次传输的结果集的大小可以根据实际情况进行设置。该方法可以无缝的溶于用户现有的IT基础设施中,对现有的网络配置策略,信息安全策略,系统管理策略没有任何影响。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种实现应用程序访问数据库的方法,其特征在于,所述的方法包括:
在防火墙的数据库侧将代理服务器的war包部署到中间件中;
在防火墙的应用程序侧通过配置所述代理服务器的url加入用于访问所述代理服务器的代理JDBC驱动,其中,所述代理JDBC驱动通过修改与数据库的通信协议,使用webservice技术进行通信,使得所述代理JDBC驱动具有穿过防火墙的能力;
所述的代理JDBC驱动调用webservice接口向所述的代理服务器发送数据库访问请求;
所述的代理服务器接收所述的数据库访问请求,并将所述的数据库访问请求转发给所述的数据库;
所述的代理服务器接收所述数据库根据所述数据库访问请求生成的返回结果,并将所述的返回结果输出给所述的代理JDBC驱动;
所述的代理JDBC驱动接收所述的返回结果。
2.根据权利要求1所述的方法,其特征在于,所述的将代理服务器的war包部署到中间件中,包括:设定所述代理服务器的访问名,设定所述中间件启动的端口号及配置所述代理服务器的数据源。
3.根据权利要求1所述的方法,其特征在于,所述的数据库访问请求包括:执行命令及查询命令。
4.根据权利要求3所述的方法,其特征在于,所述的代理服务器将所述的返回结果输出给所述的代理JDBC驱动,包括:对于执行命令,所述的代理服务器将所述的返回结果直接输出给所述的代理JDBC驱动;对于查询命令,所述的代理服务器将所述的返回结果序列化后输出给所述的代理JDBC驱动。
5.根据权利要求4所述的方法,其特征在于,将所述的返回结果序列化包括:将所述的返回结果转化为二进制数据。
6.根据权利要求5所述的方法,其特征在于,对于查询命令,所述的代理服务器将所述的返回结果序列化的过程中,根据所述url的大小对所述的返回结果进行分页,所述的代理服务器将所述的返回结果以页为单位输出给所述的代理JDBC驱动。
7.根据权利要求6所述的方法,其特征在于,对于查询命令,所述的代理JDBC驱动接收所述的返回结果的方式为分页接收。
8.根据权利要求7所述的方法,其特征在于,对于查询命令,所述的代理JDBC驱动接收所述的返回结果时,对接收到的返回结果进行反序列化,并遍历反序列化后的所有记录,当遍历到最后一条记录时,向所述的代理服务器发送后续数据获取请求。
9.根据权利要求7所述的方法,其特征在于,当所述的代理服务器接收到后续数据获取请求时,向所述的代理JDBC驱动发送下一页返回结果,如果所有的返回结果发送完毕,所述的代理服务器向所述的代理JDBC驱动返回空。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210187560.3A CN102739654B (zh) | 2012-06-08 | 2012-06-08 | 一种实现应用程序访问数据库的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210187560.3A CN102739654B (zh) | 2012-06-08 | 2012-06-08 | 一种实现应用程序访问数据库的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102739654A CN102739654A (zh) | 2012-10-17 |
CN102739654B true CN102739654B (zh) | 2015-03-18 |
Family
ID=46994438
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210187560.3A Active CN102739654B (zh) | 2012-06-08 | 2012-06-08 | 一种实现应用程序访问数据库的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102739654B (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103488765A (zh) * | 2013-09-28 | 2014-01-01 | 雷虹 | 一种代理数据库的访问驱动及其数据访问方法 |
CN106294403A (zh) * | 2015-05-21 | 2017-01-04 | 阿里巴巴集团控股有限公司 | 跨网络操作数据库的方法、系统、客户端和服务器 |
CN106445694A (zh) * | 2015-08-12 | 2017-02-22 | 优信互联(北京)信息技术有限公司 | 一种应用程序访问方法、装置及系统 |
CN106131175B (zh) * | 2016-07-01 | 2019-05-21 | 微梦创科网络科技(中国)有限公司 | 一种信息获取、信息推送方法和设备 |
EP3401820B1 (en) * | 2017-05-10 | 2019-12-18 | Siemens Aktiengesellschaft | Apparatus and method for providing a secure database access |
CN107222493A (zh) * | 2017-06-26 | 2017-09-29 | 浪潮软件股份有限公司 | 一种oracle‑jdbc数据传输通道加密压缩系统及方法 |
CN107633179B (zh) * | 2017-08-03 | 2020-01-21 | 福建天晴数码有限公司 | 一种操作数据库的方法及系统 |
CN109840264B (zh) * | 2017-09-01 | 2023-10-03 | 亿阳安全技术有限公司 | 一种应用程序数据库访问审计的方法和装置 |
CN110351219A (zh) * | 2018-04-02 | 2019-10-18 | 蓝盾信息安全技术有限公司 | 一种基于网闸系统的数据库安全访问技术 |
CN108629035B (zh) * | 2018-05-10 | 2022-05-27 | 福建星瑞格软件有限公司 | 一种基于jdbc代理的异构数据库应用迁移方法 |
CN109582583A (zh) * | 2018-12-14 | 2019-04-05 | 平安健康保险股份有限公司 | 软件测试方法、装置、计算机设备和存储介质 |
CN111683041B (zh) * | 2020-04-23 | 2023-08-25 | 北京中安星云软件技术有限公司 | 一种数据库关联访问方法 |
CN112162996A (zh) * | 2020-09-23 | 2021-01-01 | 金现代信息产业股份有限公司 | 站内图编辑器的数据库访问方法与系统 |
CN112364087A (zh) * | 2020-11-26 | 2021-02-12 | 亚信科技(中国)有限公司 | Arm平台的c/c++应用程序访问数据库的方法及系统 |
CN112948302B (zh) * | 2021-03-02 | 2022-11-08 | 广州海量数据库技术有限公司 | 一种基于本地接口来访问外部数据库的方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1333338A2 (en) * | 2002-02-04 | 2003-08-06 | Ricoh Company, Ltd. | Developer carrier having grooves on a surface thereof, developing device including the developer carrier, and an image forming apparatus including the developing device |
CN1438591A (zh) * | 2002-02-10 | 2003-08-27 | 华为技术有限公司 | 智能报表的实现方法 |
CN101226497A (zh) * | 2007-12-10 | 2008-07-23 | 金蝶软件(中国)有限公司 | 应用程序监控系统和监控方法 |
CN101848245A (zh) * | 2010-02-05 | 2010-09-29 | 南京德讯信息系统有限公司 | 基于ssl/xml的数据库访问代理方法及系统 |
-
2012
- 2012-06-08 CN CN201210187560.3A patent/CN102739654B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1333338A2 (en) * | 2002-02-04 | 2003-08-06 | Ricoh Company, Ltd. | Developer carrier having grooves on a surface thereof, developing device including the developer carrier, and an image forming apparatus including the developing device |
CN1438591A (zh) * | 2002-02-10 | 2003-08-27 | 华为技术有限公司 | 智能报表的实现方法 |
CN101226497A (zh) * | 2007-12-10 | 2008-07-23 | 金蝶软件(中国)有限公司 | 应用程序监控系统和监控方法 |
CN101848245A (zh) * | 2010-02-05 | 2010-09-29 | 南京德讯信息系统有限公司 | 基于ssl/xml的数据库访问代理方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN102739654A (zh) | 2012-10-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102739654B (zh) | 一种实现应用程序访问数据库的方法 | |
CN102394872B (zh) | 数据通信协议 | |
CN109997114B (zh) | 用于通用互通和可扩展性的服务层资源管理 | |
US7571465B2 (en) | Information exchanging system, information communication terminal, information exchanging method, and computer product | |
CN109768970B (zh) | 一种基于可配置的通用协议生成方法 | |
EP2512163B1 (en) | Method, system for defining message in machine-to-machine platform, and machine-to-machine platform | |
US8489548B2 (en) | Method, system, and device for data synchronization | |
CN1910854B (zh) | 使用元管理信息库的自动更新系统以及方法 | |
CN102970284B (zh) | 用户信息处理方法和服务器 | |
CN111683066B (zh) | 异构系统集成方法、装置、计算机设备和存储介质 | |
JP2006134335A (ja) | スマートカードと協働する「web」タイプのブラウザを用いたオブジェクトへのアクセスシステム | |
CN101156167A (zh) | 用于在数据网络上赠送的方法和设备 | |
CN104094234A (zh) | 用于嵌入过程通信的虚拟通道 | |
CN102395950A (zh) | 与数据存储系统的通信 | |
CN105337787A (zh) | 一种多服务器监控方法、装置和系统 | |
CN101167327A (zh) | 通过移动应用程序访问多个数据源的系统和方法 | |
CN108845964B (zh) | 一种基于um-bus总线的cps主节点动态识别方法 | |
WO2008121462A1 (en) | Scriptable object model for network based services | |
CN112988409A (zh) | 一种接口调用方法、装置、计算机设备及存储介质 | |
CN108829624B (zh) | 一种cps节点属性数据与功能方法代码的存储组织方法 | |
JP4864703B2 (ja) | 関連する可搬型メモリを用いてサービスを供給する装置、および第2の装置によって第1の装置の可搬型メモリのアプリケーションの起動を可能にする中継手段 | |
CN108845965B (zh) | 一种基于um-bus总线的cps从节点动态识别方法 | |
CN104378393A (zh) | 一种资源分享方法和相应的装置 | |
CN107357853B (zh) | 一种redis控制台的操作方法、装置及计算机系统 | |
US20200311040A1 (en) | Dynamically rendering an application programming interface for internet of things applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20240428 Address after: No.12 Wenhuiyuan A, Haidian District, Beijing, 100082 Patentee after: BEIJING JOIN-CHEER GOVERNMENT ADMINISTRATION SOFTWARE CO.,LTD. Country or region after: China Address before: No. 6 West Ring Middle Road, Beijing Economic and Technological Development Zone, Beijing, 100176 Patentee before: BEIJING JOIN-CHEER SOFTWARE Co.,Ltd. Country or region before: China |