J2EE的13个规范之JDBC
假设让你接触一样新的东西。你可能感觉无所适从,可是假设本来就是旧事物的话,你学习起来还难吗?
一、ODBC,我们的老朋友
ODBC(Open Database Connectivity)是微软公司与数据库的接口规范。
精华点:
1.ODBC,建立了一组规范并提供了一组对数据库訪问的标准API,标准应用程序数据接口。
2.ODBC是用C语言实现的,里面用到了大量的指针。
3.ODBC驱动程式的使用把应用程式从详细的数据库调用中隔离开来,驱动程式管理器针对特定数据库的各个驱动程式进行集中管理,并向应用程式提供统一的标准接口,
4.结构模型:分为四部分,应用程序接口,驱动器管理器,数据库驱动器和数据源。详细看图:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2Fvemhhbmd5aW5nZmVpMDEwOQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
二、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.JDBC与ODBC都是基于X/Open的SQL调用级接口。
2.JDBC非常多设计思想沿袭了ODBC,包含很多抽象和SQL CLI实现。.ODBC与JDBC都提供对SQL语言的支持;
3.JDBC的整体结构类似于ODBC,如图:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2Fvemhhbmd5aW5nZmVpMDEwOQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
不同点:
1.ODBC是由微软公司。用C语言编写的,当中用到了大量的指针;JDBC是由SUN公司,用JAVA语言编写的。全然面向对象的思想。
2.ODBC难以学习,ODBC把简单功能和复杂功能混杂在一起,即便是简单的事情也会带来复杂的操作;JDBC易于学习,设计理念是简单的事情简单做。必要时才会让用户使用高级功能。
3.ODBC的驱动器管理程序和驱动器必须手工安装到每台客户机上。JDBC的驱动器因为全是用JAVA编写,所以JDBC能够在全部的JAVA平台上自己主动安装。
四、扩展和总结
扩展:
JDBC-ODBC,它出现的原因非常easy:我们有时候须要用JAVA语言连接微软的数据库,可是因为微软的数据库不是由JAVA编写的,所以我们须要一个桥连接。
详细的实现就不在这里提及了。可是有一点须要注意的是,JDBC是使用JAVA的数据库驱动直接和数据库相连,而JDBC-ODBC连接的是ODBC的数据源,真正与数据库建立连接的是ODBC。
总结
技术上该总结的都在比較中总结出来的,在这里仅仅想说明一点,我自己从一開始打算弄懂JDBC,然后又想到了ODBC,但是对于ODBC也仅限于用过,所以感觉非常乱,整理了几天之后,就发现,最可以让自己搞清关系的是“追本溯源”,从“根”上查起,这就有种知识网再生长。往外扩展或者更加密集的感觉。而不是突兀的出现一个点。让自己绞尽脑汁。生搬硬套的找关系,而是自然而然的。顺生长,感觉还是这种学习比較好,并且有效率。推荐给大家!
J2EE的13个规范之JDBC的更多相关文章
- (转)J2EE中13个规范
今天在做连接oracle数据库的时候,感受到了什么是规范.平时听到别人说学习j2ee一定要学习他的十三个规范,大概的知道每个规范是做什么的,每个“接口”是做什么的. 很早就听过 ...
- J2EE的13个规范总结
转载自:http://blog.csdn.net/zhuanzhe117/article/details/38763483 什么是J2EE? 在企业级应用中,都有一些通用企业需求模块,如数据库连接,邮 ...
- 【java 理论篇 2】J2EE的13种规范
导读:看完了J2EE的视频,没有什么技术实践,现在就从理论上说明一下J2EE的13种规范,以及现在的自己对它的一个理解.可能会有偏差,但是,算是做为目前的一个记录. 一.13种规范 1.1.JDBC( ...
- J2EE之13个规范标准概念
主要是关于j2EE十三个规范的总结. java基础知识 首先java分为三类:J2ME.J2SE.J2EE. 依据开发软件的大小和量级他们的作用分别不同,J2ME是开发为机顶盒.移动电话和PDA之类嵌 ...
- J2EE的13个规范之(二) JDBC 及其使用
我想大家都知道ODBC是什么?ODBC(OpenDatabaseConnectivity.开放数据库互连)是微软公司开放服务结构(WOSA,WindowsOpenServicesArchitectur ...
- J2ee的13个规范
以下来自于网络. 1.JDBC(java Database Connectivity): JDBC API为访问不同的数据库提供了一种统一的途径,就像ODBC一样,JDBC对开发者屏蔽了一些细节问题, ...
- J2EE的13种规范
1.JDBC(Java Databaes Connectivity):JDBC API为访问不同的数据库提供了一种统一的途径,就像ODBC一样,JDBC对开发者屏蔽了一些细节问题,同时,JDBC对数据 ...
- J2EE的13个规范之(三) Servlet简单介绍
Servlet是一种server端脚本,它是一个特殊的Java类,继承自HttpServlet.开发中主要用于处理和响应client的请求. Servlet在容器中执行,事实上例的和销毁创建由容器进行 ...
- j2ee的十三个规范
转载 今天在做连接oracle数据库的时候,感受到了什么是规范.平时听到别人说学习j2ee一定要学习他的十三个规范,大概的知道每个规范是做什么的,每个“接口”是做什么的. 很早就听过 ...
随机推荐
- 重复数据删除(De-duplication)技术研究(SourceForge上发布dedup util)
dedup util是一款开源的轻量级文件打包工具,它基于块级的重复数据删除技术,可以有效缩减数据容量,节省用户存储空间.目前已经在Sourceforge上创建项目,并且源码正在不断更新中.该工具生成 ...
- 无比奇怪的问题,Runtime报错,程序仍可运行(有可能是线程崩溃,但主程序不崩溃,线程崩溃可能是因为锁使用不当引起的)
但主界面仍可操作. 我估计是,线程运行崩溃,不影响主界面的运行(如果你不去点击那个确认错误的对话框的话). 仔细分析,我估计是使用锁不当引起的.有2种情况下必崩溃: 1. 对没有上锁的锁进行解锁 2. ...
- phpStorm 新建文件SVN不提交的解决的方法
phpStorm中新建文件夹,可是打开文件夹.却没有提交到SVN.导致每次都必须手动增加.假设新增的文件夹或者文件较多文件夹较深,easy遗漏.(default7#zbphp.com) 解决的方法: ...
- Swift - 复杂数据类型说明(数组,字典,结构体,枚举)
1,数组 - Array 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 var types ...
- Response.Redirect 打开这两种方法的一种新形式
在一般情况下.Response.Redirect 该方法是在server年底转向,因此,除非 Response.Write("<script>window.location='h ...
- openssl之BIO系列之5---CallBack函数及其控制
CallBack函数及其控制 ---依据openssl doc/crypto/bio/bio_set_callback.pod翻译和自己的理解写成 (作者:DragonKin ...
- Codeforces Round #309 (Div. 2) C
题意: 就是给出总共同拥有k种颜色.每种颜色有ki种,排列必须满足第i+1种的最后一种颜色必须在第i种最后一种颜色的后面,其它颜色任意.总共同拥有多少种排列点的方法. 分析: 如果d[i]表示前i种的 ...
- Qt中提高sqlite的读写速度(使用事务一次性写入100万条数据)
SQLite数据库本质上来讲就是一个磁盘上的文件,所以一切的数据库操作其实都会转化为对文件的操作,而频繁的文件操作将会是一个很好时的过程,会极大地影响数据库存取的速度.例如:向数据库中插入100万条数 ...
- IOS中的ViewController 的loadView、viewDidLoad、viewDidUnload
由init.loadView.viewDidLoad.viewDidUnload.dealloc的关系说起: 1 init方法 在init方法中实例化必要的对象(遵从LazyLoad思想) init方 ...
- 菜鸟玩云计算之十一:Hadoop 手动安装指南
Hadoop 手动安装指南 cheungmine 2013-4 本文用于指导在Windows7,VMWare上安装Ubuntu, Java, Hadoop, HBase实验环境. 本指南用于实验的软件 ...