English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

JDBC サンプルコード

この章では、シンプルなJDBCアプリケーションを作成する方法についての例を提供します。これにより、データベース接続を開き、SQLクエリを実行し、結果を表示する方法を学ぶことができます。

このテンプレートサンプルで言及されているすべてのステップは、このチュートリアルの後の章で説明されます。

JDBCアプリケーションを作成する

JDBCアプリケーションを構築するには以下の六つのステップが関与しています-

  • パッケージをインポートする:データベースプログラミングに必要なJDBCクラスを含むパッケージを含める必要があります。一般的には import java.sql.*  インポートするだけで十分です。

  • JDBCドライバを登録する: ドライバを初期化する必要があります。これにより、データベースとの通信チャンネルを開くことができます。

  • 接続を確立する:使用する必要があります DriverManager.getConnection() Connectionオブジェクトを作成するための

  • クエリを実行する:SQL文を生成し、データベースに提出するためにStatementクラスのオブジェクトを使用する必要があります。

  • 結果セットからデータを抽出するために適切な ResultSet.getXXX() メソッドが結果セットからデータを取得する方法

  • 環境をクリーンアップする: すべてのデータベースリソースを明示的に閉じる必要があります。JVMのゴミ収集に依存するのではなく

サンプルコード

これからJDBCアプリケーションを作成する際に、このサンプルはテンプレートとして使用できます。

このサンプルコードは、前章で完了した環境とデータベース設定に基づいて書かれています。

以下の例をFirstExample.javaにコピーし、貼り付け、以下のようにコンパイルおよび実行してください-

//手順1.必要なソフトウェアパッケージをインポートします
import java.sql.*;
public class FirstExample {
   // JDBCドライバ名とデータベースURL
   static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";  
   static final String DB_URL = "jdbc:mysql://localhost/EMP";
   //データベースの証明情報
   static final String USER = "username";
   static final String PASS = "password";
   
   public static void main(String[] args) {
   Connection conn = null;
   Statement stmt = null;
   try{
      //手順2:JDBCドライバを登録
      Class.forName("com.mysql.jdbc.Driver");
      //手順3:接続を確立
      System.out.println("Connecting to database...");
      conn = DriverManager.getConnection(DB_URL,USER,PASS);
      //手順4:クエリを実行
      System.out.println("Creating statement...");
      stmt = conn.createStatement();
      String sql;
      sql = "SELECT id, first, last, age FROM Employees";
      ResultSet rs = stmt.executeQuery(sql);
      //手順5:結果セットからデータを抽出
      while(rs.next()){
         //列名で検索
         int id  = rs.getInt("id");
         int age = rs.getInt("age");
         String first = rs.getString("first");
         String last = rs.getString("last");
         //表示値
         System.out.print("ID: " + id);
         System.out.print(", Age: " + age);
         System.out.print(", First: " + first);
         System.out.println(", Last: " + last);
      }
      //手順6環境をクリアします
      rs.close();
      catch(SQLException se
      conn.close();
   catch(SQLException se){
      //}
      se.printStackTrace();
   Class.forNameのエラーを処理
      //e.printStackTrace();
      finally{
   }
      //リソースを閉じるための
      try{
         stmt.close();
            catch(SQLException se
      }2{
      
      }// 何もしない
      try{
         if(conn!=null)
            conn.close();
      catch(SQLException se){
         se.printStackTrace();
      }//finally try 終了
   }//try 終了
   System.out.println("Goodbye!");
}//main 終了
}//FirstExample 終了

次に、上記の例を以下のようにコンパイルします:

C:\>javac FirstExample.java
C:\>

実行時FirstExample,以下のような結果が得られます-

C:\>java FirstExample
データベースに接続中...
ステートメントの作成...
ID: 100, Age: 18, First: Zara, Last: Ali
ID: 101, Age: 25, First: Mahnaz, Last: Fatma
ID: 102, Age: 3, First: Zaid, Last: Khan
ID: 103, Age: 28, First: Sumit, Last: Mittal
C:\>