J2EE的13个规范之JDBC

       如果让你接触一样新的东西,你可能感觉无所适从,但是如果本来就是旧事物的话,你学习起来还难吗?

 

一、ODBC,我们的老朋友

 

          ODBC(Open Database Connectivity)是微软公司与数据库的接口规范。

 

 精华点:

 

1.ODBC,建立了一组规范并提供了一组对数据库访问的标准API,标准应用程序数据接口。

2.ODBC是用C语言实现的,里面用到了大量的指针。

3.ODBC驱动程式的使用把应用程式从具体的数据库调用中隔离开来,驱动程式管理器针对特定数据库的各个驱动程式进行集中管理,并向应用程式提供统一的标准接口,

4.结构模型:分为四部分,应用程序接口,驱动器管理器,数据库驱动器和数据源。具体看图:

 

                            

 

 

二、JDBC,应呼声而起

 

        JAVA语言的出现,风靡全球。当时JAVA人员用ODBC来操作数据库应用程序的时候,遇到了很多的麻烦,比如ODBC是使用C语言实现的,并且包含大量的指针,这对JAVA完全面向对象的思想是一个很大的冲突,导致了JAVA的很多优秀特性无法使用,比如平台无关性,面向对象特性等。

 

        于是,应呼声而起,SUN公司开发了一套专门java语言为接口的数据库应用程序开发接口。

 

JDBC(Java DataBase Connectivity)是Java与数据库的接口规范

 

 精华点:

 

1.JDBC定义了一个支持标准SQL功能的通用低层的应用程序编程接口(API)。

2.JDBC是用java语言实现的,完全面向对象的思想,具有平台无关性,一致性强,安全稳定,分布式,易用等优点,并且还扩展了java的能力。

3.JDBC是Java通过数据库驱动与数据库进行通信,利用Java的平台无关性,JDBC应用程式能自然地实现跨平台特性,因而更适合于internet上异构环境的数据库应用。(与ODBC一样)

4.结构模型:分为四部分,应用程序接口,驱动器管理器,数据库驱动器和数据源。(与ODBC一样)具体看图:

 

                                           

 


三、对比来学习

 

相同点:

 

1.JDBCODBC都是基于X/OpenSQL调用级接口;

2.JDBC很多设计思想沿袭了ODBC,包括许多抽象和SQL CLI实现;.ODBCJDBC都提供对SQL语言的支持;

3.JDBC的总体结构类似于ODBC,如图:

 

                    

 

 

 不同点:

 

1.ODBC是由微软公司,用C语言编写的,其中用到了大量的指针;JDBC是由SUN公司,用JAVA语言编写的,完全面向对象的思想。

2.ODBC难以学习,ODBC把简单功能和复杂功能混杂在一起,即便是简单的事情也会带来复杂的操作;JDBC易于学习,设计理念是简单的事情简单做,必要时才会让用户使用高级功能。

3.ODBC的驱动器管理程序和驱动器必须手工安装到每台客户机上;JDBC的驱动器由于全是用JAVA编写,所以JDBC可以在所有的JAVA平台上自动安装。

 

四、扩展和总结

 

 扩展:

 

       JDBC-ODBC它出现的原因很简单:我们有时候需要用JAVA语言连接微软的数据库,但是由于微软的数据库不是由JAVA编写的,所以我们需要一个桥连接。

 

        具体的实现就不在这里提及了,但是有一点需要注意的是,JDBC是使用JAVA的数据库驱动直接和数据库相连,而JDBC-ODBC连接的是ODBC的数据源,真正与数据库建立连接的是ODBC

 

 总结

 

       技术上该总结的都在比较中总结出来的,在这里只想说明一点,我自己从一开始打算弄懂JDBC,然后又想到了ODBC,可是对于ODBC也仅限于用过,所以感觉很乱,整理了几天之后,就发现,最能够让自己搞清关系的是“追本溯源”,从“根”上查起,这就有种知识网再生长,往外扩展或者更加密集的感觉,而不是突兀的出现一个点,让自己绞尽脑汁,生搬硬套的找关系,而是自然而然的,顺生长,感觉还是这样的学习比较好,而且有效率,推荐给大家!

评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值