DbUtilsのResultSetHandlerを使用し複数レコードをを任意の型のListで取得します。
【手順】
1.「Javaプロジェクトの作成方法」の手順で、「DbUtilsSample001」といプロジェクトを作成。
2.「PostgreSQLのJDBC Driver(Version 9.1-902 JDBC 4)をライブラリに設定する方法」の手順で、JDBCドライバをライブラリに設定します。
3.「DbUtils1.5をライブラリに設定する方法(Javaプロジェクト)」の手順で、「DbUtils」をライブラリに設定します。
4.「PostgreSQLのテーブルの作成方法」の手順で、テーブルを作成しておきます。
5.「PSqlGridでデータの追加方法」の手順で、データを追加しておきます。
6.「Javaクラスファイルの作成方法」の手順で、「Main.java」というクラスファイルを作成。
7.「Main.java」を以下の様に入力。
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import org.apache.commons.dbutils.DbUtils; import org.apache.commons.dbutils.QueryRunner; import org.apache.commons.dbutils.ResultSetHandler; public class Main { private static ResultSetHandler<List<Company>> h = new ResultSetHandler<List<Company>>() { public List<Company> handle(ResultSet rs) throws SQLException { List<Company> companyList = new ArrayList<Company>(); Company company = null; while (rs.next()) { company = new Company(); company.setCompanyID(rs.getString(1)); company.setCompanyName(rs.getString(2)); companyList.add(company); } return companyList; } }; public static void main(String[] args) { try { Class.forName("org.postgresql.Driver"); System.out.println("JDBCドライバの読み込みに成功しました。"); } catch (ClassNotFoundException e) { System.out.println("JDBCドライバの読み込みに失敗しました。"); e.printStackTrace(); return; } String url = "jdbc:postgresql://localhost/sampledb001?user=admin&password="; Connection conn = null; try { conn = DriverManager.getConnection(url); System.out.println("データベースとの接続に成功しました。"); } catch (SQLException e) { System.out.println("データベースとの接続に失敗しました。"); e.printStackTrace(); return; } try { QueryRunner run = new QueryRunner(); List<Company> companyList = run.query(conn, "SELECT CompanyID, CompanyName FROM MST_Company", h); for (int i = 0; i < companyList.size(); i++) { System.out.print(companyList.get(i).getCompanyID()); System.out.print(","); System.out.print(companyList.get(i).getCompanyName()); System.out.println(""); } } catch (SQLException e) { System.out.println("SQLの実行に失敗しました。"); e.printStackTrace(); } finally { try { DbUtils.close(conn); } catch (SQLException e) { System.out.println("データベースとの切断に失敗しました。"); e.printStackTrace(); } } } } class Company { private String companyID; private String companyName; public Company() {} public String getCompanyID() { return companyID; } public void setCompanyID(String companyID) { this.companyID = companyID; } public String getCompanyName() { return companyName; } public void setCompanyName(String companyName) { this.companyName = companyName; } }
8.「Ctrl+Shift+F」を押し、ソースコードをフォーマッティング、「Ctrl+S」でファイルを保存。
9.「Javaプロジェクトの実行方法」の手順で、「Main.java」を実行。
10.以下の様に表示されれば成功です。
以上です。
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。