A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 李玉生 中级黑马   /  2012-10-6 22:57  /  1265 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  JDBC的接口分为两个层次:一个是面向程序开发人员的JDBC API;另外一个是底层的JDBC Driver APIJDBC API 被描述成为一组抽象的Java接口,应用程序可以对某个数据库打开连接,执行SQL语句并且处理结果。最重要的接口如下:

        java.sql.DriverManager:处理驱动的调入并且对产生新的数据库连接提供支持。

        java.sql.Connection:代表对特定数据库的连接。

        java.sql.Statement:代表一个特定的容器,以对一个特定的数据库执行SQL语句。

        java.sql.ResultSet:控制对一个特定语句的行数据的存取。

其中java.sql.Statement又有两个子类型:
       (1)  java.sql.PreparedStatement:用于执行预编译的SQL语句。
       (2)  java.sql.CallableStatement:用于执行对一个数据库内嵌过程的调用。
        JDBC Driver API是指java.sql.Driver接口,封装了不同数据库的驱动程序(AccessFoxproSQL Server)。由于它是数据库底层处理,所以必须提供对java.sql.Connectionjava.sql. Statementjava.sql.PreparedStatementjava.sql.ResultSet的实现。
    如果目标DBMS提供有OUT参数的内嵌过程,那么还必须提供java.sql.CallableStatement 接口。在java.sql.Driver接口中每个数据库驱动程序必须提供一个类,使得系统可以由 java.sql.DriverManager来管理。一个比较好用的驱动程序是在ODBC之上提供对JDBC的实现,从而提供与ODBC接口的JDBC-ODBC桥。所谓JDBC-ODBC桥,是一个JDBC驱动程序,通过将JDBC操作转换为ODBC操作来实现JDBC操作。它由sun.jdbc.odbc包实现,包含一个用来访问ODBC的本地库,对所有ODBC可用的数据库实现JDBC 通过ODBC子协议,可以使用下面一行代码进行显示加载。
        Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
        加载时,ODBC驱动程序将创建自己的实例,同时在JDBC动程序管理器中进行注册。由于JDBC放在ODBC之后,所以实现起来简单且高效。


Driver :
         Driver接口是每个驱动器类都需要完成的。JavaSQL框架允许有多个数据库驱动器,每个驱动器应该提供一个类来实现驱动器接口,而驱动器的装载通过DriverManager实例实现。
        DriverManager将装载尽量多的驱动器,对每个给定的连接请求,将所有的驱动器依次连接到目标数据库上。当驱动器类装载后,Driver应该创建一个实例,然后注册到DriverManager上。
DriverManager :
        DriverManager管理一系列JDBC驱动器的基本服务。应用程序可以显式加载JDBC驱动器。例如下面代码显式加载my.sql.Driver
               Class.forName("my.sql.Driver");
        显式加载JDBC-ODBC桥:
                Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
它的较为重要的方法有:
           public static Connection getConnection(String url) throws SQLException
           public static Connection getConnection(String url, Properties info) throws SQLException
          public static Connection getConnection(String url, String user, String password) throws
          SQLException
        这些方法的功能都是建立一个到给定数据库url的连接。DriverManager试图从注册的JDBC驱动器序列中选择合适的驱动器,返回到url的连接。
其中:
       (1)  url为数据库url,格式为 jdbc:subprotocol:subname
       (2)  info标记/数值对作为连接参数,至少应该包括userpassword属性对。
       (3)  user指数据库用户(连接以什么身份建立)
       (4)  password 是用户的密码。
       例如:使用JDBC-ODBC桥建立到ODBC配置的数据库CallCenter的连接,访问CallCenter数据库的用户名为sa,密码无。语句行如下:
Connection con = DriverManager.getConnection("jdbc:odbc:CallCenter","sa","");












评分

参与人数 1技术分 +1 收起 理由
王海宇 + 1

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马