ホームページ  >  記事  >  Java  >  Javaにおけるデータベース技術とデータベース管理技術

Javaにおけるデータベース技術とデータベース管理技術

WBOY
WBOYオリジナル
2023-06-08 00:01:041117ブラウズ

Java は、さまざまなアプリケーションの開発および実装に広く使用されている、クロスプラットフォームのオブジェクト指向プログラミング言語です。 Javaアプリケーションの開発プロセスでは、データベース技術やデータベース管理技術も非常に重要です。この記事では、データベースの基本概念、データベース接続、データベースの操作方法、データの保存と管理など、Java のデータベース テクノロジとデータベース管理テクノロジについて説明します。

1. データベースの基本概念

データベースとは、特定のルールに従って整理および保存され、複数のユーザーが使用できるデータの集合を指します。企業または組織向けのサービスは、データの保存と管理の機能を提供します。一般的に使用されるデータベース管理システムには、MySQL、Oracle、SQL Server などが含まれます。

Java では、データベースへのアクセスと操作には、SQL ステートメントを実行するための Java API であり、Java アプリケーションとデータベース間の一連のプロトコルで構成される Java Database Connectivity (JDBC) テクノロジを使用する必要があります。コンポーネントとインターフェイスの。

2. データベース接続の実装

Java でデータベースにアクセスするには、まずデータベースとの接続を確立する必要があります。 JDBC では、DriverManager クラスの静的メソッド getConnection() メソッドを使用して、データベースへの接続を取得します。 getConnection() メソッドは、URL、ユーザー名、パスワードの 3 つのパラメーターを渡す必要があります。

たとえば、「test」という名前の MySQL データベースを作成し、「student」という名前のテーブルを作成し、ユーザー名とパスワードをそれぞれ root と 123456 に設定すると、次のコードを使用して同じデータベース接続を作成できます。 :

Connection conn = null;
try {
    Class.forName("com.mysql.cj.jdbc.Driver");
    String url = "jdbc:mysql://localhost:3306/test?serverTimezone=UTC";
    String user = "root";
    String password = "123456";
    conn = DriverManager.getConnection(url, user, password);
} catch (Exception e) {
    e.printStackTrace();
}

Class.forName() メソッドは、MySQL JDBC ドライバーをロードするために使用されます。

3. データベースの操作方法

JDBC は、主に次の側面を含む、データベースを操作するためのいくつかのインターフェイスとクラスを提供します:

  1. Statement Statement と PreparedStatement の両方インターフェイスは SQL ステートメントの実行に使用されますが、異なる点は、PreparedStatement が SQL インジェクション攻撃を防止できることです。
たとえば、テーブル内のすべてのデータをクエリするには、次のコードを使用できます。

Statement stmt = null;
ResultSet rs = null;
try {
    stmt = conn.createStatement();
    String sql = "SELECT * FROM student";
    rs = stmt.executeQuery(sql);
    while(rs.next()) {
        System.out.println(rs.getString("name") + " " + rs.getInt("age"));
    }
} catch (Exception e) {
    e.printStackTrace();
}

CallableStatement

  1. CallableStatement インターフェイスは、呼び出しに使用されます。ストアド プロシージャと関数。Statement のサブインターフェイスです。
たとえば、「getStudentNum」という名前のストアド プロシージャを呼び出すには、次のコードを使用できます。

CallableStatement cstmt = null;
try {
    String sql = "{call getStudentNum(?)}";
    cstmt = conn.prepareCall(sql);
    cstmt.registerOutParameter(1, Types.INTEGER);
    cstmt.execute();
    System.out.println(cstmt.getInt(1));
} catch (Exception e) {
    e.printStackTrace();
}

このうち、 registerOutParameter() メソッドは、出力パラメータの登録に使用されます。

ResultSetMetaData

  1. ResultSetMetaData インターフェイスは、クエリ結果のメタデータ情報を取得できます。
たとえば、テーブルのフィールド名とタイプを取得するには、次のコードを使用できます:

ResultSetMetaData rsmd = null;
try {
    stmt = conn.createStatement();
    String sql = "SELECT * FROM student";
    rs = stmt.executeQuery(sql);
    rsmd = rs.getMetaData();
    int columnCount = rsmd.getColumnCount();
    for (int i = 1; i <= columnCount; i++) {
        System.out.println(rsmd.getColumnName(i) + " " + rsmd.getColumnTypeName(i));
    }
} catch (Exception e) {
    e.printStackTrace();
}

4. データのストレージと管理

Java では、データこれはデータベースにアクセスすることで実現されます。通常、JavaBeans を使用してデータをカプセル化し、JDBC を介してデータベースにデータを書き込んだり、データベースからデータを読み取ったりします。

たとえば、Student という名前の JavaBean クラスを作成します。

public class Student {
    private String name;
    private int age;
    // getter and setter methods
}

次に、PreparedStatement を使用してデータベースにデータを書き込むことができます。

PreparedStatement pstmt = null;
try {
    String sql = "INSERT INTO student(name, age) VALUES(?, ?)";
    pstmt = conn.prepareStatement(sql);
    pstmt.setString(1, "Tom");
    pstmt.setInt(2, 20);
    pstmt.executeUpdate();
} catch (Exception e) {
    e.printStackTrace();
}

同時に、Statement または PreparedStatement を使用してデータベースからデータを読み取ることもできます。

たとえば、「トム」という名前の学生の情報を読み取るには、次のコードを使用できます。

PreparedStatement pstmt = null;
ResultSet rs = null;
try {
    String sql = "SELECT * FROM student WHERE name=?";
    pstmt = conn.prepareStatement(sql);
    pstmt.setString(1, "Tom");
    rs = pstmt.executeQuery();
    if(rs.next()) {
        Student student = new Student();
        student.setName(rs.getString("name"));
        student.setAge(rs.getInt("age"));
        System.out.println(student.getName() + " " + student.getAge());
    }
} catch (Exception e) {
    e.printStackTrace();
}

概要

Java のデータベース技術とデータベース管理技術は次のとおりです。 Java アプリケーション開発に不可欠な部分。 JDBC テクノロジを通じて、さまざまなリレーショナル データベースとの接続が実現され、データベースの操作、結果セットの処理、データの読み取りと書き込みを行うための豊富なクラスとインターフェイスのセットが提供されます。実際の開発では、プログラムのパフォーマンスと保守性を向上させるために、特定の状況に応じて適切なソリューションと最適化手法を選択する必要があります。

以上がJavaにおけるデータベース技術とデータベース管理技術の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。