java 中如何连接 oracle 数据库

Java 中有两种方式连接oracle数据库,一种是jdbc,另一种是jdbc_odbc:
注:本机上有一名为simlink的oracle数据库
方法一:jdbc方式
1、工作环境:myeclipse中->新建java_oracle工程->新建包com.zp->新建java_oracle_jdbc.java类
2、需要配置Oracle数据库驱动
   java工程(java_oracle)—>右键属性(Properties)->Java Build Path->Libraries->Add External JARs->添加oracle安装目录E:\oracle\product\10.1.0\Db_1\jdbc\lib下的“classes12.jar”文件;

  在oracle11版本的jar包为D:\app\CareKee\product\11.2.0\dbhome_1\jdbc\lib\ojdbc6_g.jar
    每次新建一个不同工程都需要配置一次

3、代码如下:
package com.zp;
import java.sql.*;
public class java_oracle_jdbc {
   
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        try
        {
           
//加载驱动
            Class.forName("oracle.jdbc.driver.OracleDriver");
            //得到连接
            Connection ct=DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:simlink", "scott", "tiger");
           
            Statement sm=ct.createStatement();
            ResultSet rs=sm.executeQuery("select * from emp");
            while(rs.next())
            {
                System.out.println("用户名:"+rs.getString(2));
            }
            rs.close();
            sm.close();
            ct.close();
 
      
        }
        catch(Exception e)
        {
            e.printStackTrace();
        }
    }
}

方法一:jdbc_odbc方式
1、配置数据源
 打开控制面板->性能和维护->数据源(ODBC)->用户DSN->添加->找到Oracle in OraDb10g_home1->完成->填写  DataSource Name(我填写的是simlink_datasource)->选择 TNS Service Name(我选择的是SIMLINK)->点击OK;
这样用户DSN中就出现了一个名为“simlink_datasource”的数据源;
2、在刚才建立的java_oracle工程中的src->com.zp包下建立一个java_oracle.java类,代码如下:
package com.zp;
import java.sql.*;
import java.sql.Connection;
import java.sql.ResultSet;


//如何使用 jdbc_odbc桥连接方式连接oracle数据库
public class java_oracle {

   
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        try{
            //1.加载驱动
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
            //2.得到连接  
            Connection ct=DriverManager.getConnection("jdbc:odbc:simlink_datasource","scott","tiger");
            //从下面开始和sql server 一模一样
            Statement sm=ct.createStatement();
            //执行sql语句得到数据集
            ResultSet rs=sm.executeQuery("select * from emp");
            //循环打印
            while(rs.next())
            {
                System.out.println("用户名:"+rs.getString(2));
            }
            rs.close();
            sm.close();

            ct.close();
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }
        //System.exit(0);
    }
}
上面两种方法运行ctrl+F11运行得到结果:
用户名:SMITH
用户名:ALLEN
用户名:WARD
用户名:JONES
用户名:MARTIN
用户名:BLAKE
用户名:CLARK
用户名:SCOTT
用户名:KING
用户名:TURNER
用户名:ADAMS
用户名:JAMES
用户名:FORD
用户名:MILLER

posted on 2014-06-19 17:48  carekee  阅读(863)  评论(0)    收藏  举报