java13(数据库编程).ppt
数据库编程,JDBC概述,JDBC(Java Database Connectivity)。Java语言有着广泛的应用前景,其中一个重要的方面就是与各类数据库连接查询的SQL语句的实现。SQL是一个综合的、通用的、功能极强的关系数据库语言,它包括数据定义、数据操纵、数据管理、存取保护和处理控制等多种功能。利用表、索引、码、行、列等来确定存储位置。SQL语言本身并不是一个很完整的编程语言,一般它都与其他编程语言结合起来使用,JDBC就是将java语言与SQL结合的一个很好的编程接口。,JDBC概述,JDBC库作为执行SQL语句的接口,它允许大量的程序针对JDBC库接口编程而不需要过多的担心应用程序使用的是什么数据库。JDBC应用程序与其使用的特定类型的数据库系统之间有很好的隔离,因此不需要针对特定的数据库重新编写。,JDBC概述,JDBC概述,Java应用程序通过JDBC API(java.sql包)与数据库连接,而实际的动作则是由JDBC驱动程序管理器(JDBC Driver Manager)通过JDBC驱动程序与数据库系统进行连接。真正提供存取数据库功能的是JDBC驱动程序,用户如果想要存取某一种具体的数据库系统中存储的数据,就必须要拥有对应于该数据库系统的驱动程序。JDBC提供的主要功能如下:(1)同一个数据库建立连接;(2)向数据库发送SQL语句;(3)处理数据库返回的结果。,数据库连接,每个JDBC应用程序至少要有一个JDBC驱动程序版本,JDBC驱动程序是Driver接口类的实现。Driver类是驱动程序厂家实现的接口,Driver使DriverManager和JDBC应用程序层可以独立于具体的数据库系统。通过java.sql 库提供的统一接口,使得可以在java环境下不必对程序作大规模的修改,只要更改相应的驱动程序,即可实现对各类数据库的操作,JDBC API,java.sql.DriveManager负责装载、拆除驱动程序,负责连接驱动程序。java.sql.Connection实现对某一数据库的连接功能(建立连接)。java.sql.Statement 在一个给定的连接中作为执行SQL语句的容器。java.sql.PreparedStatement用于执行预编译的SQL声明java.sql.CallableStatement用于执行数据库中存储过程的调用java.sql.ResultSet 保存SQL语句执行结果,编写JDBC程序的步骤,加载JDBC驱动程序 创建数据库连接执行SQL语句 接收并处理SQL的返回结果 关闭创建的各个对象,JDBC编程模型,JDBC编程举例,String className=sun.jdbc.odbc.JdbcOdbcDriver;Class.forName(className);String url=jdbc:odbc:mydsnConnection con=DriverManager.getConnection(url);Statement stmt=con.createStatement();String sql=select*from authors;ResultSet rs=stmt.executeQuery(sql);while(rs.next()System.out.println(rs.getString(1);rs.close();stmt.close();con.close();;,DriverManager,JDBC数据库驱动程序由实现了Driver接口的类定义。DriverManager类负责建立与数据源的连接,通过JDBC驱动程序进行访问。为了使用你想要使用的驱动程序,可以通过调用Class类中的静态方法forName(),传递一个String对象作为参数,其中包含着该驱动程序的类名,这样可以明确装入驱动程序。如果无法找到指定的驱动程序类名,forName()方法会抛出类型未ClassNotFoundException的异常。每个驱动程序类一般情况下都会在装入的时候生成一个自身的实例,并且通过自动调用DriverManager类方法注册这个实例。,JDBC-ODBC桥,JDBC-ODBC桥是一种类型的JDBC驱动程序,它通过将JDBC操作转换为ODBC(Open DataBase Connectivity)操作来实现JDBC操作JDBC-ODBC桥驱动程序由JavaSoft公司提出,Intersolv公司研制。提出这种类型驱动程序的原因,是由于ODBC已经成为数据库访问的业界标准,并得到了广泛应用。利用JDBC-ODBC桥可以使程序开发人员不需要学习更多的知识就可以编写JDBC应用程序,并能够充分利用现有的大量ODBC数据源。,JDBC-ODBC桥,JDBC-ODBC桥驱动程序可以使JDBC能够访问几乎所有类型的数据库,它随着sun.jdbc.odbc包与Java 2 SDK一起自动安装,无需另外的的特殊配置。当我们加载的类名为:sun.jdbc.odbc.JdbcOdbcDriver时,就意味着我们使用了JDBC-ODBC桥的方式来访问数据库,JDBC URL,JDBC URL提供了一种标识数据库的方法,可以使相应的驱动程序能够识别该数据库并与它建立连接。标准的JDBC URL的格式如下:jdbc:JDBC URL由三个部分组成,各个部分之间用冒号分隔。是指数据库连接的方式。可以根据子协议的改变而变化。,Q&A,本章结束 谢谢大家,