JavaWeb数据库程序设计.ppt

上传人:小飞机 文档编号:6509590 上传时间:2023-11-07 格式:PPT 页数:44 大小:331KB
返回 下载 相关 举报
JavaWeb数据库程序设计.ppt_第1页
第1页 / 共44页
JavaWeb数据库程序设计.ppt_第2页
第2页 / 共44页
JavaWeb数据库程序设计.ppt_第3页
第3页 / 共44页
JavaWeb数据库程序设计.ppt_第4页
第4页 / 共44页
JavaWeb数据库程序设计.ppt_第5页
第5页 / 共44页
点击查看更多>>
资源描述

《JavaWeb数据库程序设计.ppt》由会员分享,可在线阅读,更多相关《JavaWeb数据库程序设计.ppt(44页珍藏版)》请在三一办公上搜索。

1、第8章 Java Web数据库程序设计,讲课内容,8.1 数据库访问技术8.2 JDBC体系结构8.3 JDBC数据库操作8.4 数据库连接池 8.5 数据库应用实例分析与设计,8.2 JDBC体系结构,JDBC基本概念如何通过JDBC访问数据库,JDBC基本概念,JDBC为java开发者使用数据库提供了统一的编程接口,它由一组java类和接口组成。是java程序与数据库系统通信的标准API。JDBC API 使得开发人员可以使用纯java的方式来连接数据库,并执行操作。,JDBC基本概念,JDBC基本概念,JDBC基本概念,JDBC的结构,程序包主要的类Jdbc的几种类型,JDBC的两个程序

2、包,Java.sql(核心API)Javax.sql(扩展API),Java.sql(核心API),这个包中的类主要针对基本的数据库编程服务,如生成连接、执行语句以及准备语句和运行批处理查询等。Java.sql包同时还提供了一些高级的处理,比如批处理更新、事务隔离和可滚动结果集等。,Javax.sql(扩展API),它主要为数据库方面的高级操作提供了接口和类。如连接管理、分布式事务和行集等。,JDBC常用接口,Driver接口DriverManager接口Connection接口Statement接口Result接口,Driver接口,Driver接口由数据库厂家提供,对于java开发者而言,

3、只需要使用Driver接口就可以了。在编程中要连接数据库,必须先装载特定厂商的数据库驱动程序。不同的数据库有不同的装载方法。,装载驱动,装载JDBC-ODBC驱动:Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);装载MS SQL Server驱动:Class.forName(“com.microsoft.jdbc.sqlserver.SQLServerDriver”);,装载驱动,装载MySql驱动Class.forName(“org.gjt.mm.mysql.Driver”);装载Oracle驱动Class.forName(“oracle.jdbc

4、.driver.OracleDriver”);,DriverManager接口,DriverManager是JDBC的管理层,作用于用户和驱动程序之间。DriverManager跟踪可用的驱动程序,并在数据库和相应的驱动程序之间建立连接。DriverManager处理驱动程序登陆时间限制、跟踪消息的显示等。,Connection接口,Connection与特定数据库的连接(会话),在连接上下文中执行 SQL 语句并返回结果。DriverManager的getConnection()方法建立在JDBC URL中定义的数据库Connection连接上:Connection con=DriverMa

5、nager.getConnection(url,login,password);,Statement接口,用于执行静态 SQL 语句并返回它所生成结果的对象。一般情况下使用connection.createStatement()方法可以得到Statement实例。,Statement接口,三种Statement对象:Statement、PreparedStatement和CallableStatement。常用的Statement方法:execute():运行语句,返回是否有结果集。executeQuery():运行查询语句,返回ResultSet结果集。executeUpdate():运行更

6、新操作,返回更新的行数。,ResultSet接口,Statement执行SQL语句时返回ResultSet结果集。ResultSet提供的检索不同类型字段的方法,常用的有:getString():获得在数据库里是varchar、char等数据类型的对象。getFloar():获得杂数据库里是Float类型的对象。,ResultSet接口,getDate():获得在数据库里面是Date类型的数据。getBoolean():获得在数据库里面是Boolean类型的数据。getObject():在Sql中无对应类型,获得序列化对象。,JDBC的几种类型,数据库厂商一般会提供一组API访问数据库。流行的

7、数据库如Oracle、SQL Server、Sybase、Informix都提供了专用的API。,JDBC的几种类型,Type 1 JDBC-ODBC桥Type 2 部分java部分本机驱动程序Type 3 中间数据访问服务器Type 4 纯java驱动程序,Type 1 JDBC-ODBC桥,JDBC Type 1 驱动程序基于 JDBC-ODBC 桥。它是把JDBC操作翻译成对于的ODBC调用。优点:可以访问所有ODBC可以访问的数据库。缺点:执行效率低。,Type 1 JDBC-ODBC桥,Type 2 部分java部分本机驱动程序,JDBC Type 2 驱动程序依靠特定于操作系统的库

8、(共享库)来与 RDBMS 通信。应用程序将装入这种 JDBC 驱动程序,而驱动程序将使用共享库来与 数据库 服务器通信。,Type 2 部分java部分本机驱动程序,Type 3 中间数据访问服务器,JDBC Type 3 驱动程序将应用程序与中间件服务器连接,中间件服务器将应用程序的JDBC调用映射到适当的数据库驱动程序上。WebLogic的驱动池就是属于type3类型。,Type 3 中间数据访问服务器,Type 4 纯java驱动程序,Type 4 驱动程序是仅用于 Java 的 JDBC 驱动程序,它直接连接到数据库服务器。,Type 4 纯java驱动程序,JDBC object,

9、interface model,Driver Manager,Driver,ResultSet,Connection,Statement,PreparedStatement,CallableStatement,Register,Provide,Execute,Result,Extends,Extends,JVM Driver Layer,Application Layer,JDBC的使用,程序写作步骤使用实例,JDBC 之程序写作步骤,1.注册并载入特定的 Database DriverClass.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);2.利用 Dri

10、ver Manager 建立DB ConnectionConnection conn=DriverManager.getConnection(“jdbc:odbc:myDB”,“user”,”pw”);3.利用 Connection对象执行 SQL 语句并返回它所生成结果的对象。Statement stmt=conn.createStatement();,JDBC 之程序写作步骤,4.利用 Statement 执行 SQL Statement必要时取得 ResultSet referenceResultSets rs=stmt.executeQuery(“Select*from Book”);

11、5.利用 ResultSet 读取相关资料rs.getXXX(“fieldName”);6.依序关闭使用之对象及连接;ResultSet Statement Connection,实例一 jdbc-odbc桥方式连接Access,连接数据库JDBC-ODBC,连接数据库 Connection con=null;try/调用JDBC-ODBC 驱动程序 Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);/建立连接 con=DriverManager.getConnection(jdbc:odbc:MS Access Database;DBQ=.databas

12、eCompany.mdb);Statement stmt=con.createStatement();,连接数据库JDBC-ODBC,/利用 Statement 执行 SQL Statement 并保存到ResultSet 中。ResultSet rst=stmt.executeQuery(SELECT chCompanyName FROM Company;);/处理结果集 while(rst.next()System.out.println(rst.getString(chCompanyName);catch(Exception e)e.printStackTrace();,不同数据库厂商的

13、JDBC驱动的使用,Microsoft Access DatabaseMicrosoft SQL ServerMySQL DatabaseOracle DatabaseSybase Database,Microsoft Access Database,语法:/调用JDBC-ODBC 驱动程序Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);/建立连接con=DriverManager.getConnection(jdbc:odbc:MS Access Database;DBQ=.databaseCompany.mdb);,Microsoft SQL Ser

14、ver,语法:Class.forName(net.sourceforge.jtds.jdbc.Driver);Connection con=DriverManager.getConnection(jdbc:jtds:sqlserver:/host:port/database,user,password);orConnection con=DriverManager.getConnection(jdbc:jtds:sybase:/host:port/database,user,password);,MySQL Database,语法:Class.forName(com.mysql.jdbc.Dr

15、iver);Connection con=DriverManager.getConnection(jdbc:mysql:/host:port/database,user,password);,Oracle Database,语法:Class.forName(oracle.jdbc.driver.OracleDriver);Connection con=DriverManager.getConnection(jdbc:oracle:thin:host:port:databse,user,password);,Sybase Database,语法:Class.forName(com.sybase.jdbc2.jdbc.SybDriver).newInstance();DriverManager.getConnection(jdbc:sybase:Tds:IP地址:2638?ServiceName=+数据库名称,账号,密码);,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号