JDBC学习笔记(1):JDBC理论概述

简介

  • JDBC(Java Data Base Connectivity,java数据库连接),由一些接口和类构成的API。使编程人员可以通过这个API接口连接到数据库,并使用结构化查询语言(即SQL)完成对数据库的查找和更新。(SQL通常发音为"sequel",它是数据库访问的业界标准.)JDBC是Java最常用类库之一。
  • J2SE的一部分,由java.sql,javax.sql包组成。
  • 应用程序、JDBC API、数据库驱动及数据库之间的关系。如图1:
技术分享

JDBC驱动程序类型

  • 第一类:驱动程序将JDBC翻译成ODBC,然后使用一个ODBC驱动程序与数据库进行通信。[ODBC/JDBC桥]
  • 第二类:由部分Java程序和部分本地代码组成,用于与数据库的客户端API进行通信。在使用这种驱动程序之前,客户端不仅需要安装Java类库,还需要安装一些与平台相关的代码。
  • 第三类:驱动程序是纯Java客户端类库。用一种与具体数据库无关的协议将数据库请求发送给服务器构件,然后该构件在将数据库请求翻译成数据库相关的协议。
  • 第四类:驱动程序是纯Java类库,它将JDBC请求直接翻译成数据库相关的协议。

 

总之,JDBC最终实现了以下目标:

  • 通过使用标准的SQL语句,甚至是标准的SQL扩展,程序员就可以使用Java语言开发访问数据库的应用,同时依旧遵守Java语言的相关约定。
  • 数据库供应商和数据库开发工具商可以提供底层的驱动程序。因此,可以优化各自数据库产品的驱动程序。

在传统的C/S模式中,通常是在服务器端部署数据库,而在客户端安装内容丰富的GUI界面。在此模型中,JDBC驱动程序应该部署在客户端。

 

技术分享
传统的客户端/服务器应用

如今,全世界都在从C/S模式转向"三层应用模式",甚至更高级的"n层应用模式"。在三层应用模式中,客户端不直接调用数据库,而是调用服务器上的中间件层,最后又中间件层完成数据库的查询操作。这种三层应用模式有一下优点:

它将可视化表示(位于客户端)从业务逻辑(位于中间层)和原始数据(位于数据库)中分离出来。因此,我们就可以从不同的客户端,如Java应用、Applet或者Web表单,来访问相同的数据和相同的业务规则。

客户端和中间层之间的通信可以通过HTTP(在将Web浏览器用作客户端时),或诸如远程方法调用RMI这样的机制来完成。JDBC负责在中间层和后台数据库之间进行通信。这种通信模型基本架构如下图:

技术分享

三层结构的应用

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。