资源描述:
《jsp中用jdbc访问数据库》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、学习内容:了解JDBC数据库访问技术和JDBC的常用接口掌握JDBC数据库驱动程序的获取和安装掌握使用JDBC访问数据库的方法掌握JSP、Servlet、JavaBean中数据库的连接和操作理解连接池和数据源的概念掌握连接池典型编程方法第7单元用JDBC访问数据库JDBC概述用JDBC访问数据库DAO与数据库连接池什么是JDBCJDBC是Java数据库连接(JavaDataBaseConnectivity)技术的简称,由一组用Java语言编写的类和接口组成。JDBC是一组独立于特定数据库管理系统的、通用的SQL数据库
2、存取和操作的公共接口(在java.sql和javax.sql包中)。JDBCTM本身是个商标名而不是一个缩写字;JDBC由JavaSoft公司(Sun公司负责开发Java产品的业务单位)同数据库及数据库工具厂家一起建立的独立于DBMS的机制;JDBC为工具/数据库开发人员提供了一个标准的API,使他们能够用纯JavaAPI来编写数据库应用程序。JDBC的设计目标:JDBC是一种规范,最主要的设计目的是让各个数据库开发商为Java程序员提供标准的数据库访问的类和接口;不必在不同的系统平台下编写不同的数据库应用程序。对不
3、同DBMS管理的数据进行一致的操作,而不必关心其存储格式;可以使用Java语言来编写完整的数据库方面的应用程序。JDBC的优缺点JDBC的优点:可移植性强:JDBC支持多种关系型数据库,只需用JDBCAPI编写一个程序即可访问不同的数据库;JDBC使程序员不关注驱动程序的编写,完全专著业务逻辑的开发。可以用JDBC-ODBC桥驱动器将JDBC函数调用转换为ODBC;JDBC接口是面向对象的,开发人员可以将常用的方法进行二次封装,从而提高代码的重用性。JDBC缺点:通过JDBC访问数据库时,实际的操作速度会降低。虽然J
4、DBC编程接口是面向对象的,但通过JDBC访问数据库仍然是面向关系的。JDBC提供了对不同厂家的数据库产品的支持,这样对数据源的操作有所影响。与ODBC相比,JDBC没有定制的"数据源"的概念,而是直接在应用程序中加载驱动程序并连接特定的数据库。ODBC体系结构ODBC(开放数据库互连):微软为实现异构数据库互连而推出的一种标准,它是一个单一的、公共的编程接口。ODBC的体系结构含有四个部件:应用程序Application:执行ODBC函数调用和处理,提交SQL语句并检索结果。驱动程序管理器DriverManager
5、:为应用程序装载驱动程序。驱动程序Driver接口:实现ODBC函数调用和同数据源交互作用的动态连接库,执行ODBC函数调用提交SQL请求到指定的数据源,并把结果返回给应用程序。需要时,驱动程序也可改变应用程序请求,以和特定DBMS的语法匹配。数据源DataSource:由需要交互的数据和与之相连的OS、DBMS及存取DBMS的网络平台组成。JDBC体系结构JDBC接口(API)也包括两个层次(与ODBC相类似):面向应用的API(JavaAPI抽象接口):供应用程序开发人员使用包括:连接数据库、执行SQL语句、获得
6、结果面向数据库的API(javaDriverAPI):供数据库厂商实现相应的数据库驱动程序(驱动程序是实现了java.sql.Driver接口的类)。加载某个数据库驱动程序类时,将创建相应的实例并向java.sql.DriverManage类注册该对象。其执行过程如下:JDBC驱动程序的类型JavaSoft定义了四种JDBC驱动程序的基本类型。建议使用:JDBC-ODBC桥驱动程序,数据库协议驱动程序;不建议使用:网络协议驱动程序,本地Java驱动程序。数据库协议驱动程序:驱动程序用于与数据库客户端API进行通信(代
7、替JDBC-ODBC桥)性能会比桥略好,是一种低成本数据库解决方案,许多厂商将该类驱动程序捆绑在其产品中。JDBC-ODBC桥驱动程序:将JDBC翻译成ODBC后,再用ODBC驱动程序与数据库通信。仅用于:有ODBC驱动程序但没有提供JDBC驱动程序的数据库系统;或已使用ODBC的低成本数据库解决方案。纯Java类库的驱动程序网络协议驱动程序:将JDBC命令转换为与数据库系统无关的网络协议,并发送给一个中间件服务器。中间件服务器再将该网络协议,转换为特定数据库系统的协议,并发送给数据库系统。从数据库系统获得的结果,先
8、发送给中间件服务器,并进而返回给应用程序。本地Java驱动程序:纯Java的驱动程序,直接与特定的数据库系统通信;即驱动程序将JDBC请求直接翻译成特定DBMS协议。优点:没有中间的转换或者是中间件。通常用于提高数据库访问的性能。JDBC的主要功能JDBCAPI多集中在java.sql包中,按功能可分为6类:管理连接数据源:DriverMana