はじめに
このプロジェクトでは、PreparedStatement を使用して MySQL データベースを照会するための JDBC(Java Database Connectivity)の使い方を学びます。目的は、edusysデータベースのinstructorテーブルから給与が 6000 以上の教師の名前と給与を取得することです。
👀 プレビュー

🎯 タスク
このプロジェクトでは、以下のことを学びます。
- JDBC を使用してデータベース接続を確立する方法
- パラメータプレースホルダを持つ PreparedStatement を作成する方法
- 照会を実行して結果セットを処理する方法
- 例外を処理してリソースを適切にクローズする方法
🏆 成果
このプロジェクトを完了すると、以下のことができるようになります。
- JDBC の基本と、MySQL データベースとやり取りするための使い方を理解すること
- パラメータ付きの SQL 照会を実行するために PreparedStatement を使用する Java コードを書くこと
- JDBC を使用してデータベースからデータを取得して処理すること
- JDBC アプリケーションでエラーハンドリングとリソース管理を実装すること
MySQL サービスを起動してデータベースをインポートする
このステップでは、MySQL サービスを起動してedusys.sqlデータベースをインポートする方法を学びます。以下の手順に従ってこのステップを完了します。
MySQL サービスを起動します。ターミナルで以下のコマンドを実行することで行えます。
sudo service mysql startedusys.sqlデータベースを MySQL にインポートします。ターミナルで以下のコマンドを実行することで行えます。mysql -u root < /home/labex/project/edusys.sql
このコマンドは、root ユーザを使用してedusys.sqlデータベースを MySQL にインポートします。
Java プロジェクトディレクトリを作成する
このステップでは、Java プロジェクトディレクトリを作成する方法を学びます。以下の手順に従ってこのステップを完了します。
Java プロジェクト用の新しいディレクトリを作成します。
mkdir /home/labex/project/salary cd /home/labex/project/salaryプロジェクトに必要なサブディレクトリを作成します。
mkdir src lib binsrcディレクトリには、Java ソースコードファイルが含まれます。libディレクトリには、プロジェクトが使用する外部ライブラリが含まれます。binディレクトリには、コンパイル済みの Java クラスファイルが含まれます。
JDBC ドライバーと Java ファイルを移動する
このステップでは、JDBC ドライバとJDBCQueryByPreparedStatement.javaファイルを適切なディレクトリに移動する方法を学びます。以下の手順に従ってこのステップを完了します。
JDBC ドライバを
libディレクトリに移動します。mv /home/labex/project/mysql-connector-java-8.0.21.jar /home/labex/project/salary/libJDBCQueryByPreparedStatement.javaファイルをsrcディレクトリに移動します。mv /home/labex/project/JDBCQueryByPreparedStatement.java /home/labex/project/salary/src
照会システムを実装する
このステップでは、JDBCQueryByPreparedStatement.javaファイルにおいて大学情報照会システムのコードを実装します。以下の手順に従ってこのステップを完了します。
エディタで
JDBCQueryByPreparedStatement.javaファイルを開きます。main()メソッドに以下のコードを追加します。try { String url = "jdbc:mysql://localhost:3306/edusys"; String username = "root"; String password = ""; // データベース接続を確立する Connection connection = DriverManager.getConnection(url, username, password); // パラメータプレースホルダ付きの SQL 文を準備する String sql = "SELECT name, salary FROM instructor WHERE salary >?"; PreparedStatement preparedStatement = connection.prepareStatement(sql); // パラメータ値を設定する preparedStatement.setDouble(1, 6000); // 照会を実行する ResultSet resultSet = preparedStatement.executeQuery(); // 結果セットをループ処理する while (resultSet.next()) { String name = resultSet.getString("name"); double salary = resultSet.getDouble("salary"); System.out.println(name + " " + salary); } // リソースをクローズする resultSet.close(); preparedStatement.close(); connection.close(); } catch (SQLException e) { e.printStackTrace(); }このコードは MySQL データベースに接続し、ユーザに照会するテーブルを選択させ、適切な SQL 照会を実行し、結果をコンソールに表示します。
JDBCQueryByPreparedStatement.javaファイルを保存します。
アプリケーションを実行する
この最後のステップでは、アプリケーションを実行します。
- Java ファイルをコンパイルします。
javac -d bin/ src/JDBCQueryByPreparedStatement.java
- アプリケーションを実行します。
java -cp bin/:lib/mysql-connector-java-8.0.21.jar JDBCQueryByPreparedStatement
以下の出力が表示されるはずです。
Srinivasan 65000.0
Wu 90000.0
Mozart 40000.0
Einstein 95000.0
El Said 60000.0
Gold 87000.0
Katz 75000.0
Califieri 62000.0
Singh 80000.0
Crick 72000.0
Brandt 92000.0
Kim 80000.0
おめでとうございます!あなたは無事にこのプロジェクトを完了しました。
まとめ
おめでとうございます!このプロジェクトを完了しました。あなたの技術を向上させるために、LabEx でさらに多くの実験を行って練習することができます。



