CN101013435A - Jdbc-odbc驱动的一种三层实现方法 - Google Patents
Jdbc-odbc驱动的一种三层实现方法 Download PDFInfo
- Publication number
- CN101013435A CN101013435A CN 200710013514 CN200710013514A CN101013435A CN 101013435 A CN101013435 A CN 101013435A CN 200710013514 CN200710013514 CN 200710013514 CN 200710013514 A CN200710013514 A CN 200710013514A CN 101013435 A CN101013435 A CN 101013435A
- Authority
- CN
- China
- Prior art keywords
- jdbc
- odbc
- database
- driver
- driving
- 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
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
Abstract
本发明是将传统上相互分离的ODBC驱动及JDBC驱动,通过将ODBC驱动和JDBC驱动的对外接口与具体实现相分离,ODBC驱动和JDBC驱动只提供标准的接口。在标准的ODBC驱动和JDBC驱动与数据库引擎间设置共享的ODBC/JDBC Server,ODBC/JDBC Server实现具体的ODBC、JDBC SQL功能。本发明将数据库版本升级时,数据库厂商ODBC驱动和JDBC驱动程序开发测试成本降低一半左右,而应用客户端ODBC驱动或JDBC驱动不用做任何更改就能享受到升级的好处。
Description
1、技术领域
本发明涉及一种计算机应用技术,具体地说是一种JDBC-ODBC驱动的一种三层实现方法。
2、背景技术
ODBC(Open Database Connectivity)技术是Microsoft推出的为异构数据库访问的统一接口。ODBC基于SQL(Structured Query Language),并把它作为访问数据库的标准。这个接口提供了最大限度的相互可操作性:一个应用程序可以通过一组通用的代码访问不同的数据库管理系统。一个软件开发者开发的客户或服务器应用程序不会被束定于某个特定的数据库之上。ODBC可以为不同的数据库提供相应的驱动程序。
JDBC是Java的开发者——Sun的Javasoft公司制定的Java数据库连接(Java Data Base Connectivity)技术的简称,是为各种常用数据库提供无缝联接的技术。JDBC也是基于SQL(Structured Query Language)的,在Web和Internet应用程序中的作用和ODBC在Windows系列平台应用程序中的作用类似。
JDBC目前有四种实现方法:
1、JDBC-ODBC桥
作为JDK1.1后的一部分,是sun.jdbc.odbc包的一部分Application--->JDBC-ODBC Bridge(Type1 jdbc driver)---->JDBC-ODBCLibrary--->ODBC Driver-->Database,适用于快速的原型系统,没有提供JDBC驱动的数据库如Access
2、JAVA to Native API
利用开发商提供的本地库来直接与数据库通信。Application--->JDBCDriver(Type2 jdbc driver)---->Native Database library---->Database,比Type1性能略好。
3、Java to net
Application--->Jdbc Driver(Type3 jdbc driver)----->javamiddleware--->JDBC Driver---->Database,具有最大的灵活性,通常由那些非数据库厂商提供,是四种类型中最小的。
4、JAVA to native dababase
Application--->Jdbc driver(type4 jdbc driver)----->databaseengine--->database,最高的性能,通过自己的本地协议直接与数据库引擎通信,具备在Internet装配的能力。
上述的各种实现方法存在的不足是,每当数据库出现版本升级时,虽然ODBC和JDBC的标准和对外接口不变,但数据库对应的ODBC驱动及JDBC驱动的具体实现都需要修改,数据库新增的或变化的SQL功能都要修改测试,需要的周期长,成本较大,另外客户端需要更换新的驱动程序。
3、发明内容
本发明的JDBC-ODBC驱动的一种三层实现方法,是利用ODBC驱动和JDBC驱动实现的SQL是一样的特点,将ODBC驱动和JDBC驱动的对外接口与具体实现相分离,在标准的ODBC驱动和JDBC驱动与数据库引擎之间共享一个ODBC-JDBCServer,由由ODBC/JDBC Server实现具体的ODBC、JDBC SQL功能,ODBC和JDBC驱动只是一个标准的接口,其所有具体实现通过中间层的ODBC/JDBC Server实现。
本发明的好处有以下三个方面:当数据库出现版本升级时,对于数据库开发商,只需要升级数据库服务器端的ODBC/JDBC Server即可,开发测试成本节省了一半左右。另一方面,对于应用层面使用的ODBC驱动或JDBC驱动不需要更新,客户端不用做任何更改就能享受到升级的好处,对于传统C/S应用模式中众多客户端来讲,由本发明带来的时间和物力成本节支是很可观的。第三个方面,通过修改ODBC标准驱动或JDBC标准驱动的配置,通过将ODBC标准驱动或JDBC标准驱动指向不同的ODBC/JDBC Server,就可享受到不同数据库版本或不同类型数据库的功能,而得到这些好处是不需要重新安装客户端驱动的。
4、附图说明
附图1是标准的ODBC驱动和JDBC驱动与ODBC/JDBC Server结构示意图。
5、实施方式
参照说明书附图对本发明的作以下详细地说明。
本发明的JDBC-ODBC驱动的一种三层实现方法,本发明的目的是利用ODBC驱动和JDBC驱动实现的SQL是一样的特点,将ODBC驱动和JDBC驱动的对外接口与具体实现相分离,在标准的ODBC驱动和JDBC驱动与数据库引擎之间设置一个ODBC/JDBC Server。
如附图1所示,在本发明中,由ODBC/JDBC Server调用数据库引擎API实现具体的SQL功能,ODBC和JDBC驱动只是一个标准的接口,其所有具体实现通过中间层的ODBC/JDBC Server实现。
在本发明的JDBC-ODBC驱动的一种三层实现方法中,当数据库出现版本升级时,只需要升级数据库服务器端的ODBC/JDBC Server即可。
本发明的JDBC-ODBC驱动的一种三层实现方法适用于任何提供ODBC接口或JDBC接口的关系数据库和对象关系数据库。
Claims (3)
1、JDBC-ODBC驱动的一种三层实现方法,其特征在于利用ODBC驱动和JDBC驱动实现的SQL是一样的特点,将ODBC驱动和JDBC驱动的对外接口与具体实现相分离,在标准的ODBC驱动和JDBC驱动与数据库引擎之间共享一个ODBC-JDBCServer,由由ODBC/JDBC Server实现具体的ODBC、JDBC SQL功能,ODBC和JDBC驱动只是一个标准的接口,其所有具体实现通过中间层的ODBC/JDBC Server实现。
2、根据权利要求1所述的JDBC-ODBC驱动的一种三层实现方法,其特征在于当数据库出现版本升级时,只需要升级数据库服务器端的ODBC/JDBC Server即可。
3、根据权利要求1所述的JDBC-ODBC驱动的一种三层实现方法,其特征在于适用于任何提供ODBC接口或JDBC接口的关系数据库和对象关系数据库。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710013514 CN101013435A (zh) | 2007-02-05 | 2007-02-05 | Jdbc-odbc驱动的一种三层实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200710013514 CN101013435A (zh) | 2007-02-05 | 2007-02-05 | Jdbc-odbc驱动的一种三层实现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101013435A true CN101013435A (zh) | 2007-08-08 |
Family
ID=38700947
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200710013514 Pending CN101013435A (zh) | 2007-02-05 | 2007-02-05 | Jdbc-odbc驱动的一种三层实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101013435A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102841783A (zh) * | 2011-06-24 | 2012-12-26 | 镇江华扬信息科技有限公司 | 一种基于Delphi的三层数据库系统的实现方法 |
CN104794147A (zh) * | 2013-12-30 | 2015-07-22 | 深圳键桥通讯技术股份有限公司 | 异构数据库访问方法 |
CN108664616A (zh) * | 2018-05-14 | 2018-10-16 | 浪潮软件集团有限公司 | 一种基于ROWID的Oracle数据批量采集方法 |
-
2007
- 2007-02-05 CN CN 200710013514 patent/CN101013435A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102841783A (zh) * | 2011-06-24 | 2012-12-26 | 镇江华扬信息科技有限公司 | 一种基于Delphi的三层数据库系统的实现方法 |
CN104794147A (zh) * | 2013-12-30 | 2015-07-22 | 深圳键桥通讯技术股份有限公司 | 异构数据库访问方法 |
CN108664616A (zh) * | 2018-05-14 | 2018-10-16 | 浪潮软件集团有限公司 | 一种基于ROWID的Oracle数据批量采集方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7089566B1 (en) | Method for accessing object linking-embedding database data via JAVA database connectivity | |
US9870202B2 (en) | Business object model layer interface | |
US7676493B2 (en) | Incremental approach to an object-relational solution | |
US7363628B2 (en) | Data centric and protocol agnostic workflows for exchanging data between a workflow instance and a workflow host | |
US8074228B2 (en) | Systems and methods for providing mockup business objects | |
US20080126409A1 (en) | Systems and methods for providing a decoupled simulation for business objects | |
Keith et al. | Pro JPA 2: Mastering the JavaTM Persistence API | |
US8095570B2 (en) | Decorated model architecture for efficient model-driven application development | |
JP2008532154A (ja) | ワークフローを処理するための方法、コンピュータ・プログラム、およびシステム(ワークフロー・システムへのデータ管理動作の統合) | |
WO2003083700A1 (en) | Micro edition dynamic object- driven database manipulation and mapping system | |
US20060143223A1 (en) | System and method for common object/relational mapping | |
KR20060045622A (ko) | 컴퓨터화된 재무 시스템의 추출, 변환 및 로딩 설계자 모듈 | |
WO2006026636A2 (en) | Metadata management | |
US7457806B2 (en) | Accessing a non-relational store with a container-managed persistence bean via a web service function | |
CN104794147A (zh) | 异构数据库访问方法 | |
CN101110030A (zh) | 基于java的数据库持久层的开发方法 | |
WO2008068186A2 (en) | Software model skinning | |
WO2006026702A2 (en) | Methods and systems for semantic identification in data systems | |
US20080134136A1 (en) | Software model normalization and mediation | |
CN101013435A (zh) | Jdbc-odbc驱动的一种三层实现方法 | |
Patel et al. | Java database programming with JDBC | |
US9864796B2 (en) | Databases from models | |
US7058651B2 (en) | Method, computer program product, and system for automatic class generation with simultaneous customization and interchange capability | |
Thomas | Java Data Access—JDBC, JNDI, and JAXP | |
US20020144234A1 (en) | Naming scheme for reducing complexity of application creation tools |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |