始める無料で始める

書籍レポート

CityBook Libraries では、蔵書コレクションを表示するカタログレポートを作成したいと考えています。HikariCP の接続プールを使用して、PostgreSQL データベースから効率的にデータを取得しましょう。

クエリは books テーブルから book_idtitlepublication_year を取得します。これまで学んだことをすべて活用して、プールされた接続の取得、ステートメントの作成、クエリの実行、そして結果の抽出を行いましょう。HikariSetup クラスと HikariDataSource はすでにインポートされています。

この演習はコースの一部です

Java で PostgreSQL データベースにクエリを実行する

コースを見る

演習の手順

  • getConnection() を使用して、データソースから接続を取得します。
  • createStatement() を使用して、ステートメントを作成します。
  • executeQuery(query) を使用して、クエリを実行します。
  • book_idtitle に対して、適切なゲッターメソッドを使用します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

public class Main {
    public static void main(String[] args) throws SQLException {
        HikariDataSource ds = HikariSetup.createDataSource();

        String query = "SELECT b.book_id, b.title, b.publication_year FROM books b LIMIT 5";

        // Get connection, create statement, and execute query
        try (Connection conn = ____.____();
        Statement stmt = ____.____();
        ResultSet rs = ____.____(query)) {
            while (rs.next()) {
                // Retrieve integer column
                int bookId = rs.____("book_id");
                // Retrieve string column
                String title = rs.____("title");
                int year = rs.getInt("publication_year");
                System.out.printf("ID: %d, Title: %s (%d)%n", bookId, title, year);
            }
        }
    }
}
コードを編集して実行