第十一周学习视频(三)

一、JDBC体系结构

JDBC的实现包括3个部分:
(1)JDBC驱动程序管理器:Java.sql.DriverManager类,负责注册特定驱动程序,以及建立与数据库之间的连接。
(2)JDBC驱动程序API: 其中最主要的接口是: java.sql.Driver接口。屏蔽不同的数据库驱动程序之间的差别,提供程 序员标准的纯java数据库设计接口,为java程 序访问数据库提供支持。
(3)JDBC Driver(驱动程序): 由数据库供应商或其他第三方工具提供商创建,JDBC driver实现了JDBC驱动器 API,负责与特定的数据库连接。

二、JDBC应用程序中的主要接口

java.sql.DriverManager 处理驱动程序的加载和建立新数据库连接
java.sql.Connection 处理与特定数据库的连接
java.sql.Statement 在指定连接中处理SQL语句
java.sql.ResultSet 处理数据库操作结果集

三、JDBC应用程序模型

(1)登记并加载JDBC驱动
(2)建立与SQL数据库的连接
(3)传送一个SQL查询
(4)获得结果

四、DriverManager

是java.sql包中用于数据库驱动程序管理的类,作用于用户和驱动程序之间。
一般的应用程序只使用它的 getConnection()方法,用来建立与数据库的连接。
eg. Connection connection = DriverManager.getConnection(URL, NAME, PASSWORD);//URL="jdbc:mysql://localhost:3306/数据库名"


JDBC URL标准语法: jdbc: :
jdbc协议:JDBC URL中的协议总是jdbc。
子协议:驱动程序名或连接机制的名称。
子名称:数据库的唯一标识符。

五、Connection

Connection是用来表示数据库连接的对象, 对数据库的一切操作都是在这个连接基础上进行的。
Connection类的主要方法 :
Statement createStatement( )//创建用于执行SQL语句的 Statement对象

六、Statement

Java所有SQL语句都是通过Statement对象实现的。
Statement是在已经建立连接的基础上向数据库发送SQL语句的对象。
eg. Statement stmt= con.createStatement();


Statement对象提供了三种执行SQL语句的方法:
(1) ResultSet executeQuery(String sql): 执行SELECT语句,返回一个结果集。
(2) int executeUpdate(String sql):执行update、insert、delete 等不需要返回结果集的SQL语句。它返回一个整数,表示执行SQL语句影响的数据行数。
(3) boolean execute(String sql):用于执行多个结果集、多个更新结果(或者两者都有)的SQL语句。

七、ResultSet

ResultSet对象实际上是一个由查询结果数据构成的表,内容是SQL查询返回的数据, 由满足条件的所有行组成。
ResultSet维护一个指向当前数据行的游标, ResultSet 每次调用ResultSet.next()方法,游标下移一行。

八、MetaData

DatabaseMetadata和 ResultSetMetaData接口分别表示关于数据库和查询结果集的元数据信息。元数据可以提供数据库结构和表的详细信息。
eg.ResultSetMetaData metaData = resultSet.getMetaData();
或:DatabaseMetadata metaData = resultSet.getMetaData();

九、JTable

JTable类(表格)为显示大块数据提供了一种简单的机制。
在具体的应用中,要让JTable显示自定义的数据,就必须定制JTable对象所要使用的 javax.swing.table.TableModel对象。


TableModel本身是一个接口,Java提供了两个类分别实现了TableModel:
(1)AbstractTableModel抽象类:实现了大部份的TableModel方法,让用户可以很有弹性地构造自己的表格模式。
(2)DefaultTableModel实体类:是java默认的表格模式。


public class ResultSetTableModel extends AbstractTableModel
//AbstractTableModel实现了TableModel接口。并提供了相关方法的默认实现。
JTable resultTable = new JTable( tableModel );
//将ResultSetTableModel对象传递给JTable 构造函数,将JTable注册成 ResultSetTableModel产生的TableModeEvent的监听器。

十、RowSet接口

不必在保持连接的情况下处理结果集。
RowSetFactory则可以通过createJdbcRowSet()创建JdbcRowSet,jdbcRs配置好后执行jdbcRs.execute() 。

十一、PreparedStatement接口

PreparedStatement接口是Statement 接口的扩展,代表了一条已编译的SQL语句。
PreparedStatement接口使用户能够创建 编译过的SQL语句,它的执行比Statement对象更有效率。
PreparedStatement接口继承自 Statement,但增加处理参数的方法,使用比Statement对象更灵活。为每种支持的SQL类型都提供了set方法,可方便设置数据库中的参数

猜你喜欢

转载自www.cnblogs.com/caihan/p/12801506.html