Java与数据库的连接.ppt
《Java与数据库的连接.ppt》由会员分享,可在线阅读,更多相关《Java与数据库的连接.ppt(34页珍藏版)》请在咨信网上搜索。
1、2024/2/28 周三 14:341第10章 Java与数据库的连接武汉大学计算机学院计算机应用系2024/2/28 周三 14:34第 2 页深入了解JDBC访问各种数据库的驱动程序的模式熟练掌握利用JDBC访问数据库的步骤熟练掌握JDBC完成各种数据库操作熟练掌握Java API来编写数据库应用程序http:/ 周三 14:34310.1 JDBC概述2024/2/28 周三 14:34第 4 页10.1.1 JBDC的用途 JDBC即Java 数据库连接(Java Database Connectivity)。JDBC为数据库及其工具开发人员提供了一个标准的API,使他们能够用纯 Ja
2、va API 来编写数据库应用程序。在JDK的早期版本中,JDBC只是一个可选部件,到了JDK1.1公布时,SQL类包(也就是JDBC API)就成为Java语言的标准部件。JDBC扩展了Java的功能。例如,使用Java和JDBC API可以发布含有Applet的网页,而该Applet的信息可能来自远程数据库。使用JDBC,使信息的管理和传播变得容易和经济。2024/2/28 周三 14:34第 5 页10.1.2 从ODBC到JDBC1.ODBC的结构模型 ODBC的结构包括4个主要部分:应用程序接口、驱动程序管理器、数据库驱动程序和数据源。应用程序接口:屏蔽不同的ODBC数据库驱动程序之
3、间函数调用的差别,为用户提供统一的SQL编程接口。驱动程序管理器:为应用程序装载数据库驱动程序。数据库驱动程序:实现ODBC的函数调用,提供对特定数据源的SQL请求。如果需要,数据库驱动程序将修改应用程序的请求,使得请求符合相关的DBMS所支持的文法。数据源:由用户想要存取的数据以及与它相关的操作系统、DBMS和用于访问DBMS的网络平台组成。2024/2/28 周三 14:34第 6 页10.1.2 从ODBC到JDBC2.JDBC的诞生Java 刚诞生时,由于没有一个Java语言的数据库API,编程人员不得不在Java程序中加入C语言的ODBC函数调用。这就使Java的很多优秀特性无法充分
4、发挥,如平台无关性、面向对象特性等。随着Java语言访问数据库的应用越来越多,对Java语言访问数据库API接口的要求也越来越强烈。由于ODBC有其不足之处,如它不容易使用、没有面向对象的特性等,因而SUN公司开发了一套Java语言的数据库应用程序开发接口。在JDK的早期版本中,JDBC只是一个可选部件,到JDK 1.1公布时,SQL类包(即JDBC API)就成为Java语言的标准部件。2024/2/28 周三 14:34第 7 页10.1.3 JDBC的实现及其驱动程序1.专用网络协议的驱动程序与数据库直接通信这种实现方法是直接使用数据库厂商提供的、用专用网络协议创建的驱动程序,通过它可以
5、直接将JDBC API调用转换为网络调用,其结构如图所示。这种调用方式一般性能比较好,而且也是最简单实用的方法。因为它不需要安装其他的库程序或者中间件,几乎所有的数据库厂商都为他们的数据库提供了这种JDBC驱动程序,也可以从第三方厂商获得这些驱动程序。从网址http:/ API驱动程序数据源2024/2/28 周三 14:34第 8 页10.1.3 JDBC的实现及其驱动程序2.通过JDBC-ODBC桥与ODBC数据源通信作为JDBC的一部分,SUN公司还发行了一个用于访问ODBC数据源的驱动程序,称为JDBC-ODBC桥接器。它是用jdbcodbc.c1ass和一个用于访问ODBC驱动程序的
6、本地库来实现的。该本地库是一个动态连接库DLL(JDBCODBC.DLL)。这个驱动程序把JDBC的方法映射到ODBC调用上,这样,JDBC就可以和任何可用的ODBC驱动程序进行交互。它使JDBC目前有能力访问几乎所有的数据库。应用程序JDBC APIJDBC-ODBCODBC层ODBC API数据源2024/2/28 周三 14:35第 9 页10.1.3 JDBC的实现及其驱动程序3.通过部分专用的驱动程序与数据库通信这种方式的特点是将JDBC数据库调用直接翻译为厂商专用的API,与上述的JDBC-ODBC桥接器相比,它的执行更有效、更快捷,其模式如图所示。应用程序JDBC API驱动程序
7、数据源专用APIv4.这种JDBC是纯Java的,直接与数据库实例交互。Java API-JDBC-数据库协议-数据库2024/2/28 周三 14:351010.3 JDBC API介绍2024/2/28 周三 14:35第 11 页 10.3 JDBC API介绍 JDBC API所有的类和接口都集中在Java.sql和Javax.sql这两个包中。Java.sql 这个包中包含的类和接口采用的是传统的C/S体系结构。它的功能主要针对的是基本数据库编程服务,如生成连接、执行语句以及准备语句和运行批处理查询等。也有一些其它的高级功能。Javax.sql 它与Java.sql相比,引入了一些J
8、DBC编程方面的主要的体系结构的改变,并且为连接管理、分布式事务处理和连接提供了更好的抽象。同时,这个包还引入了容器管理的连接缓冲池、分布式事务处理和行集(row set)等机制。2024/2/28 周三 14:35第 12 页10.3 JDBC API介绍编写简单JDBC程序的基本步骤:2024/2/28 周三 14:35第 13 页10.3.1 连接管理要编写一个JDBC程序,首先应该将它与数据库进行连接。在连接管理这一组中,主要有下面2个类和2个接口。java.sql.DriverManager 这个类提供了用于管理一个或多个数据库驱动程序。每个驱动程序都可以连接特定的数据库。java.
9、sql.DriverPropertyInfo 由于每个数据库都需要一组属性以获得一条连接,这个类可用于查找连接所需要的属性。java.sql.Driver 这是一个抽象了厂商专用连接协议的接口,可从数据库的生产厂商或第三方厂商获得该接口的实现。java.sql.Connection 这个接口抽象了大部分与数据库的交互活动。通过一条连接,可以向数据库发送SQL语句以及读取执行的结果。2024/2/28 周三 14:35第 14 页10.3.2 数据库访问当建立连接后,可以发送SQL语句访问数据库和读取访问的结果。java.sql.Statement 这个接口可在基层连接上执行SQL语句并访问返回
10、结果。java.sql.PreparedStatement 这是java.sql.Statement接口的一个变种,可以使用参数化SQL语句。java.sql.CallableStatement 这个接口可运行存储过程。java.sql.ResultSet 这个接口抽象了运行SQL select语句的结果。它提供了访问结果的方法。可以使用这个接口来访问各记录中不同的字段。2024/2/28 周三 14:361510.4 JDBC API的使用方法 2024/2/28 周三 14:36第 16 页10.4.1 JDBC API工具1.注册数据库的驱动程序(driver)DriverManager
11、.registerDriver():该方法用于为DriverManager对象注册特定的Driver对象。DriverManager类的方法利用已注册的驱动器表,确定是否可以连接到某数据库的URL地址。Class.forName:通过调用方法 Class.forName显式地加载驱动程序类。由于这个调用与外部设置无关,因此推荐使用这种加载驱动程序的方法。以下代码加载类 acme.db.Driver:Class.forName(acme.db.Driver);加载驱动程序的第一种方法需要持久的预设环境。如果对这一点不能保证,则调用方法 Class.forName 显式地加载每个驱动程序就显得更为
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 数据库 连接
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【可****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【可****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。