小さい頃はエラ呼吸

いつのまにやら肺で呼吸をしています。


Eclipseで作るJavaからOracleに接続するサンプルプログラム

はじめに

Eclipse 4.5 MarsでOracle DBに接続するプログラムを作ってみました。

スッキリわかるJava入門 第2版
中山 清喬 国本 大悟
インプレス
売り上げランキング: 820

環境
  • Windows Server 2008 R2
  • Oracle 11g
  • Eclipse 4.5 Mars
  • JRE 1.8.0.45
事前準備

以下のページを参考に、scott/tigerのサンプルスキーマを作成してください。

サンプルプログラム(DataAccess.java)

EclipseでJavaプロジェクトを作成して、DataAccess.javaというソースファイルを追加します。

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class DataAccess {

  public static void main(String[] args) {
    DataAccess dataAccess = new DataAccess();

    try {
      dataAccess.selectOracle();
    } catch (Exception e) {
      e.printStackTrace();
    }
  }

  public void selectOracle() throws Exception {

    // ユーザ名
    String user = "scott";
    // パスワード
    String pass = "tiger";
    // サーバ名
    String servername = "localhost";
    // SID
    String sid = "orcl";

    Connection conn = null;
    Statement stmt = null;
    ResultSet rset = null;

    try {
      // JBBCドライバクラスのロード
      Class.forName("oracle.jdbc.driver.OracleDriver");

      // Connectionの作成
      conn = DriverManager.getConnection("jdbc:oracle:thin:@" + servername + ":1521:" + sid, user, pass);

      // Statementの作成
      stmt = conn.createStatement();

      // Resultsetの作成
      rset = stmt.executeQuery("select EMPNO, ENAME, JOB from EMP");

      // 取得したデータを出力する
      while (rset.next()) {
        System.out.println(rset.getString("EMPNO") + "," + rset.getString("ENAME") + "," + rset.getString("JOB"));
      }

    } catch (ClassNotFoundException e) {
      throw e;
    } catch (SQLException e) {
      throw e;
    } catch (Throwable e) {
      throw e;
    } finally {
      try {
        /* クローズ処理 */
        if (rset != null) {
          rset.close();
          rset = null;
        }

        if (stmt != null) {
          stmt.close();
          stmt = null;
        }

        if (conn != null) {
          conn.close();
          conn = null;
        }
      } catch (Throwable e) {
          // nop
      }
    }
  }
}
クラスパスにojdbc14.jarを追加する

このままだとビルドが通らないので、クラスパスにojdbc14.jarを追加します。

ojdbc14.jarは、ぼくの環境では以下のパスにありました。

C:\product\11.2.0\dbhome_1\owb\wf\lib
実行結果

このプログラムを実行すると、以下のようにコンソールにEMP表のデータが出力されます。