Boekenrapport
CityBook Libraries wil een catalogusrapport genereren van hun boekencollectie. Je gebruikt HikariCP-connectionpooling om efficiënt gegevens op te halen uit de PostgreSQL-database.
De query selecteert book_id, title en publication_year uit de tabel books. Zet alles wat je hebt geleerd bij elkaar: haal een pooled connection op, maak een statement, voer de query uit en lees de resultaten uit. De klasse HikariSetup en HikariDataSource zijn al voor je geïmporteerd.
Deze oefening maakt deel uit van de cursus
Query's uitvoeren op een PostgreSQL-database in Java
Oefeninstructies
- Haal een connection op uit de data source met
getConnection(). - Maak een statement met
createStatement(). - Voer de query uit met
executeQuery(query). - Gebruik de juiste getter-methoden voor
book_identitle.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
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);
}
}
}
}