Java でのデータベース プログラミング

PHPz
リリース: 2023-06-16 08:12:09
オリジナル
1900 人が閲覧しました

Java は、データ処理と管理に優れた非常に強力なプログラミング言語です。 Java 言語はデータベース プログラミングで広く使用されており、多くのアプリケーションにはデータベース操作が含まれます。この記事では、Java でのデータベース プログラミングについて説明します。

1. JDBC の概要

JDBC (Java Database Connectivity、Java Database Connection) は、Java 言語でのさまざまなリレーショナル データベースへの共通アクセス インターフェイスであり、Java EE アーキテクチャの一部であり、これも Java の一部であり、プログラミングにおける重要なコンポーネントであり、Java とデータベース間の接続を実現するためによく使用されます。

JDBC を使用すると、SQL プロトコルをサポートするデータベースとの接続を簡単に確立し、SQL ステートメントを直接実行できます。 JDBC API は、ドライバー マネージャー、コネクタ、ステートメント、結果セットなど、Java ベースのデータベース接続を実装するための多くのクラスとインターフェイスを定義します。

2. JDBC ドライバー

JDBC プログラミングを使用する場合、ドライバーを介してデータベースとの接続を確立する必要があります。 JDBC ドライバーは、データベースとの通信に使用されるソフトウェア モジュールです。 JDBC ドライバーは通常、データベース ベンダーによって提供されますが、独自のドライバーを開発することもできます。

JDBC ドライバーは、一般に 4 つのタイプに分類されます。

  1. JDBC-ODBC ブリッジ: JDBC-ODBC ブリッジは、Java アプリケーションが ODBC インターフェイスを渡して任意の ODBC にアクセスできるようにするユニバーサル ドライバーです。準拠したデータベース。
  2. ネイティブ API ドライバー: ネイティブ API ドライバーは、Java 開発者が使用するためにデータベース ベンダーによって直接提供されるドライバーです。このドライバーは、さまざまなデータベースと通信するためにさまざまな実装を必要とします。
  3. ネットワーク プロトコル ドライバー: ネットワーク プロトコル ドライバーは、データベースのネットワーク プロトコルを通じてサーバーと通信します。通常、ドライバーは TCP/IP プロトコルを使用します。
  4. Pure Java ドライバー: Pure Java ドライバーは、データベース ベンダーが提供するネットワーク プロトコルを使用してデータベースと通信する、完全に Java で記述されたドライバーです。このドライバーは、JDBC Type 4 ドライバーと呼ばれることがよくあります。

3. JDBC API の使用

データベースに接続するには、通常、次の手順が必要です:

  1. ドライバーをロードします: Class.forName( ) メソッド JDBC ドライバーをロードします。
  2. データベースへの接続: DriverManager.getConnection() メソッドを使用して、データベースへの接続を確立します。
  3. Statement オブジェクトの作成: Connection.createStatement() メソッドを使用して、実行可能な SQL ステートメント オブジェクトを作成します。
  4. SQL ステートメントの実行: SQL ステートメントを実行するには、Statement オブジェクトのexecute() メソッドを使用します。
  5. 結果セットの取得: SQL ステートメントがリレーショナル テーブルを返す場合、Statement オブジェクトのexecuteQuery() メソッドを使用して結果セットを取得できます。
  6. データベース接続を閉じる: データベースとの通信が必要なくなったら、Connection.close() メソッドを使用してデータベース接続を閉じます。

次は、MySQL データベースに接続する Java プログラムの例です:

import java.sql.*;

public class JDBCExample {
   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{
      Class.forName("com.mysql.jdbc.Driver");

      System.out.println("Connecting to database...");
      conn = DriverManager.getConnection(DB_URL,USER,PASS);

      System.out.println("Creating statement...");
      stmt = conn.createStatement();
      String sql;
      sql = "SELECT id, first, last, age FROM Employees";
      ResultSet rs = stmt.executeQuery(sql);

      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);
      }

      rs.close();
      stmt.close();
      conn.close();
   }catch(SQLException se){
      se.printStackTrace();
   }catch(Exception e){
      e.printStackTrace();
   }finally{
      try{
         if(stmt!=null)
            stmt.close();
      }catch(SQLException se2){
      }
      try{
         if(conn!=null)
            conn.close();
      }catch(SQLException se){
         se.printStackTrace();
      }
   }
   System.out.println("Goodbye!");
}
}
ログイン後にコピー

上記のプログラム例では、最初に com.mysql.jdbc.Driver ドライバーをロードし、次に指定されたデータベースに接続します。次に、作成した Statement オブジェクト stmt を使用して、MySQL データベースで SQL クエリを実行します。最後に、ResultSet、Statement、およびデータベース接続 Connection オブジェクトを閉じます。

概要

アプリケーションでは、通常、データはリレーショナル データベースに保存されます。 Java 言語は、データベースに接続して対話するための実用的な API を多数提供します。 JDBC は、Java で一般的に使用されるデータベース接続 API の 1 つであり、Java アプリケーションがリレーショナル データベースとの通信を簡単に確立できるようにします。 Java でデータベース プログラミングを行う場合は、まず対応するドライバーをロードしてデータベースとの接続を確立する必要があります。その後、JDBC API のクラスとメソッドを使用して、SQL クエリ、データの追加、削除、変更などの操作を実行できます。

以上がJava でのデータベース プログラミングの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート