zoukankan      html  css  js  c++  java
  • 第十一周学习视频(三)

    一、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:<subprotocol>:<subname>
    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方法,可方便设置数据库中的参数

  • 相关阅读:
    Asp.Net MVC 路由
    EntityFramework执行SQL语句
    partial类与[MetadataType(typeof(类名))]有什么区别?
    Asp.net mvc + .net ef database first 或 model first 时如何添加验证特性
    Entity Framework 学习总结之一:ADO.NET 实体框架概述
    C#中dynamic的正确用法
    Func与Action
    SVN的使用和问题解决方法总结
    微信小程序---绘图
    微信小程序---动画
  • 原文地址:https://www.cnblogs.com/caihan/p/12801506.html
Copyright © 2011-2022 走看看