เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

รายงานหนังสือ

CityBook Libraries ต้องการสร้างรายงานแคตาล็อกเพื่อแสดงข้อมูลคอลเลกชันหนังสือในระบบ โดยใช้ connection pooling ของ HikariCP เพื่อดึงข้อมูลจากฐานข้อมูล PostgreSQL อย่างมีประสิทธิภาพ

คิวรีนี้จะดึงข้อมูล book_id, title และ publication_year จากตาราง books นำทุกสิ่งที่เรียนมาประกอบเข้าด้วยกัน: ดึง connection จาก pool, สร้าง statement, รันคิวรี และดึงผลลัพธ์ออกมา คลาส HikariSetup และ HikariDataSource ถูก import ไว้ให้แล้ว

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

การคิวรีฐานข้อมูล PostgreSQL ด้วย Java

ดูคอร์ส

คำแนะนำการฝึกหัด

  • ดึง connection จาก data source โดยใช้ getConnection()
  • สร้าง statement ด้วย createStatement()
  • รันคิวรีโดยใช้ executeQuery(query)
  • ใช้ getter method ที่เหมาะสมสำหรับ book_id และ title

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

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);
            }
        }
    }
}
แก้ไขและรันโค้ด