欢迎来到天天文库
浏览记录
ID:40780012
大小:5.16 MB
页数:54页
时间:2019-08-07
《10 JDBC数据库编程》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第十章JDBC数据库编程10.1.1JDBC的概述JDBC是一种可以用来执行SQL语句的底层JavaAPI,对于不同的数据库系统,在功能层次上提供了统一的访问方法。构成:由Java语言编写的接口和类组成数据库访问功能:打开/关闭数据库连接与数据库通信执行SQL语句检索查询结果JDBC提供连接各种常用数据库的能力,可以为多种关系数据库提供统一的访问接口。Java应用程序JDBCJDBCJSP/Servlet客户端数据库服务器J2EE应用服务器数据库服务器客户端ODBC(OpenDatabaseCon
2、nectivity)简介微软开发的在Windows平台数据库访问的C语言的API,不适合Java中直接使用。ODBC提供一个与数据库类型无关的前端应用和后端数据库系统之间的接口,通过配置数据源,允许用户访问来自不同类型的数据库。ODBC不适合在Java中直接使用:ODBC是一个C语言实现的API,从Java中调用本地的C程序在安全性、完整性、健壮性方面都有缺点。无法精确实现从ODBCAPI到JavaAPI的翻译(语言限制:指针支持,操作系统限制)。为什么不直接使用ODBC?JDBC的构成(1)面向
3、Java程序员的JDBCAPI:通过调用JDBCAPI可实现连接数据库、执行SQL语句并返回结果集,是由JDK定义的接口所构成:java.sql.Driverjava.sql.Connectionjava.sql.Statementjava.sql.PreparedStatementjava.sql.CallableStatementjava.sql.ResultSet…………………..(2)面向数据库厂商的JDBCDriver(驱动):数据库厂商必须提供相应的驱动并实现JDBCAPI所要求的基本
4、接口每个数据库驱动必须针对该数据库提供对Driver、Connection、Statement、ResultSet等接口的具体实现类,从而保证Java程序员通过调用JDBCAPI实现对不同的数据库操作。JDBC程序的结构JDBCAPI提供:JDK定义内容:供编程调用的接口,位于java.sql包中DriverManager(DriverManager类)提供:JDK实现作用:载入各种不同的JDBC驱动JDBC驱动提供:数据库厂商内容:连接特定的数据库的JDBCAPI接口实现类SqlServerOr
5、acleJDBCAPIJDBCDriverManagerJDBC驱动JDBC驱动Java应用程序JDBCAPI、DriverManager、JDBC驱动之间的关系(1)JDBCAPI为JDK定义的接口和类,具体功能实现在JDBC驱动中;如:JDBCAPI定义了Driver、ResultSet等接口,需要在JDBC驱动的实现类中实现这些接口;(2)对于不同的数据库,JDBC驱动不同,DriverManager用来管理JDBC驱动,进行注册驱动。(3)应用程序调用的是JDBCAPI,故从编程角度访问所
6、有数据库可采用一致的方法。JDBCAPI可完成:与数据库建立连接、执行SQL语句、处理结果ConnectionDriverManagerStatementResultSetDriverManager:依据数据库的不同,管理JDBC驱动Connection:负责连接数据库并担任传送数据的任务Statement:由Connection产生、负责执行SQL语句ResultSet:负责保存Statement执行后所产生的查询结果客户端数据库服务器123410.1.2JDBC驱动类型JDBC驱动程序的类型J
7、DBC-ODBC桥驱动本地协议纯Java驱动JDBC网络纯Java驱动纯Java驱动①JDBC-ODBC桥JDBC-ODBC桥Java应用程序JDBCAPIODBCAPIODBC层DBServer将对JDBCAPI的调用,转换为对ODBC连接API的调用优点:可以访问所有ODBC可以访问的数据库缺点:执行效率低、功能不够强大一般在个人开发与测试中使用②本地协议纯Java驱动利用数据库提供商的本地库来直接和数据库通信,不同的数据库不同。可移植性比较差,但效率最快。本地JDBC驱动Java应用程序JD
8、BCAPIDBServer本地API③JDBC网络纯Java驱动主要利用中间件提供数据连接池的服务,如使用tomcat连接池。Java应用程序JDBCAPI中间件JDBC驱动DBServer④纯Java驱动JDBC驱动Java应用程序JDBCAPIDBServer由JDBC驱动直接访问数据库优点:100%Java,快又可跨平台缺点:访问不同的数据库需下载专用的JDBC驱动10.1.3配置ODBC数据源目的:使用jdbc-odbc桥接驱动方式访问数据库(access)选择数据库所在地
此文档下载收益归作者所有