• JDBC之一:JDBC快速入门 分类: B1_JAVA 2014-02-19 14:49 745人阅读 评论(0) 收藏


    (1)下载Oracle的JDBC驱动,一般放在$ORACLE_HOME/jdbc/lib目录,关于驱动的版本请见:

    http://elf8848.iteye.com/blog/811037

    •  随Oracle 11.1发布的Oracle JDBC驱动11.1版本

    ojdbc5.jar:   适用于jdk5

    ojdbc6.jar:   适用于jdk6 (如果你使用jdk1.5,就不能使用这个驱动)

    ***_g.jar 只是用javac -g编译,生成所有调试信息,其它全一样

    •      ojdbc6.jar:支持JDK6,支持JDBC 4.0,新的java.sql.SQLXML类型没有被支持。

    ojdbc5.jar:全面支持使用JDK5 和 JDBC 3.0 。

    •      建议使用oracle.jdbc.OracleDriver类,不建议使用oracle.jdbc.driver.OracleDriver。从9.0.1开始的每个release都推荐使用oracle.jdbc。
    •      j2se1.2,1.3,1.4不再支持。11R1不再包括这些版本的jar和zip,如果仍然使用这些版本,可以继续使用10gR2的jdbc。

    (2)使用Eclipse EE创建一个Dynamics Web Project,并将ojdbc6.jar放入WebContent/WEB-INF/lib目录下。

    (3)写Dao接口

    package com.ljh.irms2.dao;
    import java.sql.Connection;
    public interface DbHelper {
           public  Connection getDbConnection();
    }


    (4)实现Dao类

    package com.ljh.irms2.dao.impl;
     
    import java.sql.Connection;
    import java.sql.DriverManager;
     
    import com.ljh.irms2.dao.DbHelper;
     
    public class DbHelperImpl implementsDbHelper {
          
           privatefinal static String URL ="jdbc:oracle:thin:@192.168.0.1:1521:irmsdc2";
           privatefinal static String USERNAME = "NFJD_DC_XZ";
           privatefinal static String PASSWORD = "NFJD_DC_XZ";
     
           @Override
           publicConnection getDbConnection() {
                  Connectionconn = null;
                  try{
                         //注册JDBC驱动程序
                         Class.forName("oracle.jdbc.OracleDriver");
                         //打开一个数据库连接
                         conn= DriverManager.getConnection(URL, USERNAME, PASSWORD);
                  }catch (Exception e) {
                         e.printStackTrace();
                  }
                  returnconn;
                 
           }
     
    }

    (5)使用数据库连接对数据进行增删查改

    package com.ljh.irms2.dao.impl.test;
     
    import java.sql.Connection;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
     
    import com.ljh.irms2.dao.impl.DbHelperImpl;
     
    import org.junit.Test;
     
    public class DbHelperImplTest {
     
           @Test
           publicvoid test() {
                  //(1)使用获取到的数据库连接
                  DbHelperImplhelper = new DbHelperImpl();
                  Connectionconn = helper.getDbConnection();
                 
                  //(2)从数据库连接中创建一个statement对象,然后通过些对象执行语句,并获取结果集。
                  Statementstmt = null;
                  ResultSetrs = null;
                  Stringsql = "SELECT * FROM user_tables";
     
                  try{
                         stmt= conn.createStatement();
                         rs= stmt.executeQuery(sql);
                         while(rs.next()){
                                System.out.print(rs.getString("table_name")+"
    ");
                         }
                         //(3)关闭资源
                         rs.close();
                         stmt.close();
                         conn.close();
                        
                  }catch (SQLException e) {
                         e.printStackTrace();
                  }
    }
    }


    关键步骤有:

    (1)注册JDBC驱动程序

    Class.forName("oracle.jdbc.OracleDriver");

    (2)打开一个数据库连接

    conn = DriverManager.getConnection(URL,USERNAME, PASSWORD);

    (3)从数据库连接中创建一个statement对象,然后通过些对象执行语句,并获取结果集。

                  Statementstmt = null;

                  ResultSetrs = null;

                  Stringsql = "SELECT * FROM user_tables";

                  try{

                         stmt= conn.createStatement();

                         rs= stmt.executeQuery(sql);

                        

    (4)对结果集进行处理

    while(rs.next()){

    System.out.print(rs.getString("table_name")+" ");

    }

    (5)关闭资源

                         rs.close();

                         stmt.close();

                         conn.close();

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    Math类四个常用方法辨析,floor、ceil、round、rint
    【转】ctypes库的使用整理
    【转】采用dlopen、dlsym、dlclose加载动态链接库【总结】
    【转】collectd的部署
    【转】Pycharm Professional(专业版)完美破解,
    【转】在结构体最后定义一个长度为0的字符数组(技巧)
    【转】C++11智能指针之weak_ptr
    轻量级、高性能http代理服务器,内网穿透从未如此简单。
    php 大文件上传 redis+php resque 较低io消耗
    leetcode 870. 优势洗牌
  • 原文地址:https://www.cnblogs.com/lujinhong2/p/4637351.html
Copyright © 2020-2023  润新知