WEB开发网
开发学院WEB开发Jsp JDBC学习笔记 阅读

JDBC学习笔记

 2008-06-23 16:35:58 来源:WEB开发网   
核心提示:l. 连接到数据库的方法 答:1) ODBC(Open Database Connectivity) 一个以C语言为基础访问SQL为基础数据库引擎的接口,它提供了一致的接口用于和数据库沟通以及访问数据,JDBC学习笔记, 2) JDBC java版本的ODBC 2. JDBC应用编程接口 答:JDBC应用编程

l. 连接到数据库的方法
答:1) ODBC(Open Database Connectivity)
    一个以C语言为基础访问SQL为基础数据库引擎的接口,它提供了一致的接口用于和数据库沟通以及访问数据。
  2) JDBC
    java版本的ODBC

2. JDBC应用编程接口
答:JDBC应用编程接口是:
  1) 标准的数据访问接口,可以连到不同的数据库;
  2) JAVA编程语言的一组类和接口。
  JDBC应用编程接口能够:
  1) 连接到数据库;
  2) 发SQL查询字符串到数据库;
  3) 处理结果。
  JDBC应用编程接口有二个主要的部分:
  1) JAVA应用程序开发接口面向JAVA应用程序开发者;
  2) JDBC驱动程序开发接口
  
3. JDBC Driver
答:1) 一大堆实现了JDBC类和接口的类;
  2) 提供了一个实现java.sql.Driver接口的类。

4. JDBC Driver的四种类型
答:1) JDBC-ODBC桥
  由ODBC驱动提供JDBC访问
  2) 本地API
  部分Java driver把JDBC调用转化成本地的客户端API
  3) JDBC-net
  纯的Java driver,将JDBC调用转入DBMS,与网络协议无关。然后通过服务器将调用转为DBMS协议。
  4) 本地协议
  纯的java driver,将JDBC调用直接转为DBMS使用的网络协议

5. JDBC开发者接口
答:1) java.sql--java 2平台下JDBC的主要功能,标准版(J2SE)
  2) javax.sql--java 2平台下JDBC增强功能,企业版(J2EE)

6. 使用URL确认数据库
答:我们使用URL来确定一个数据库(正确的Driver,正确的主机,正确的协议,正确的协议,正确的用户名和密码);
  语法:PRotocol:subprotocol:subname
  范例:jdbc:db2:MyTest
     jdbc:db2://localhost:6789/MyTest

7. javax.sql包JDBC2.0的增强功能
答:1) 数据源接口;
  2) 连接池;
  3) 分布式交易;
  4) 行集;

8. 创建一个基本的JDBC应用
答:1) 步骤一:注册一个driver;
  2) 步骤二:建立一个到数据库的连接;
  3) 步骤三:创建一个statement;
  4) 步骤四:执行SQL语句;
  5) 步骤五:处理结果;
  6) 步骤六:关闭JDBC对象

9. 注册一个Driver(步骤一)
答:1) driver被用于连接到数据库;
  2) JDBC应用编程接口使用第一个能成功连接到给定URL的driver;
  3) 在同一时间可以装载多个driver

10.注册一个driver的方法:
答:1) 使用类loader(装载;实例化;注册入DriverManager)
    a. Class.forName("Com.ibm.db2.jdbc.app.DB2Driver");
    b. Class.forName("Com.ibm.db2.jdbc.net.DB2Driver");
    c. Class.forName("Com.microsoft.jdbc.sqlServer.SQLServerDriver);
    d. Class.forName("oracl.jdbc.driver.OracleDriver");
    e. Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
  2) 实例化一个Driver
    a. Driver drv = new COM.cloudscape.core.RmiJdbcDriver();

1. 建立一个到数据库的连接(步骤二)
答:DriverManager调用getConnection(urlString)方法,实际上调用的是driver的connect(urlString)方法;
  1) 当一个driver肯定地对应到一个数据库URL,DriverManager建立一个连接;
  2) 当没有driver匹配,返回null然后下一个driver被检验;
  3) 假如没有建立连接,抛出一个SQLExcepiton异常

2. 经常使用的一些JDBC URL
答:1) JDBC-ODBC: jdbc:odbc:<DB>
  2) Oracle: jdbc:oracle:oci:@<sid> or jdbc:oracle:thin:@<SID>
  3) Weblogic MS-SQL: jdbc:weblogic:mssqlserver4:<DB>@<HOST>:<PORT>
  4) DB2: jdbc:db2:MyTest or jdbc.db2://localhost:6789/MyTest(需要用户名和密码)

3. Driver连接方法
答:1) 创建一个到指定Driver实例的直接调用;
  2) 避免一般访问的问题
    Driver drv = new COM.ibm.db2.jdbc.app.DB2Driver();
    Connection con = null;
    try {con = drv.connect("jdbc:db2:MyTest",new Properties())}
    catch(SQLException e){}

4. 创建一个Statement(步骤三)
答:1) Statement的三个接口:
    a. Statement;
    b. PreparedStatement(继承自Statement);
    c. CallableStatement(继承自PreparedStatement);
  2) 使用方法Connection.createStatement()得到一个Statement对象

5. PreparedStatement对象
答:1) 调用ProparedStatement比statement更为高效;
  2) 继承自Statement;
  3) 语法:PreparedStatement pstm = connection.prepareStatement(sqlString);

6. CallableStatement对象
答:1) 通过CallableStatement调用数据库中的存储过程;
  2) 继承自PreparedStatement;
  3) CallableStatement cstm = connection.prepareCall("{call return_student[?,?]}");
    cstm.setString(1,"8623034");
    cstm.registerOutparameter(2, Types.REAL);
    cstm.execute();
    float gpa = cstm.getFloat(2);

7. Statement接口的比较
答:       | Statement      | PreparedStatement     |  CallableStatement
  ------------------------------------------------------------------------------
  写代码位置  |  客户端       | 客户端           |  服务器端
  ------------------------------------------------------------------------------
  写代码位置  |  客户端       | 服务器端          |  服务器端
  ------------------------------------------------------------------------------
  编写代码技术 |Java,SQL操作     |Java,SQL操作        |  数据库的程序语言,如PL/SQL
  ------------------------------------------------------------------------------
  可配置性   |  高         |第一次高,以后低      |  低
  ------------------------------------------------------------------------------
  可移植性   |  高         |假设支持PreparedStatement的话高
  ------------------------------------------------------------------------------
  传输效率   |  低         |第一次低,以后高      |  高

1 2  下一页

Tags:JDBC 学习 笔记

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接