Report dei libri
CityBook Libraries vuole generare un report di catalogo che mostri la propria collezione di libri. Userai il connection pooling di HikariCP per recuperare i dati in modo efficiente dal database PostgreSQL.
La query seleziona book_id, title e publication_year dalla tabella books. Metti insieme tutto ciò che hai imparato: ottieni una connessione dal pool, crea uno statement, esegui la query ed estrai i risultati. Le classi HikariSetup e HikariDataSource sono già importate per te.
Questo esercizio fa parte del corso
Eseguire query su un database PostgreSQL in Java
Istruzioni dell'esercizio
- Ottieni una connessione dall'origine dati usando
getConnection(). - Crea uno statement con
createStatement(). - Esegui la query usando
executeQuery(query). - Usa i metodi getter corretti per
book_idetitle.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
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);
}
}
}
}