Capitoli di esempio
La Metropolitan Public Library sta lanciando l’iniziativa "Prova prima di prendere in prestito" per aumentare la circolazione. Ora gli utenti possono leggere online il primo capitolo dei libri prima di decidere se prenderli fisicamente in prestito. I test iniziali hanno mostrato che questa funzione ha aumentato i prestiti del 40%.
Il tuo compito è implementare la funzionalità di backend per archiviare i capitoli di esempio nel database.
Il capitolo di esempio, che include la variabile Data.content, è già stato caricato per te.
Questo esercizio fa parte del corso
Eseguire query su un database PostgreSQL in Java
Istruzioni dell'esercizio
- Imposta il parametro della prepared statement con lo stream di caratteri dalla variabile
charStream.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
public class Main {
public static void main(String[] args) throws SQLException {
Reader charStream = new StringReader(Data.content);
HikariDataSource ds = HikariSetup.createDataSource();
String query = """
INSERT INTO book_content (book_id, sample_chapter) VALUES (?, ?)
ON CONFLICT (book_id) DO NOTHING
""";
try (Connection conn = ds.getConnection();
PreparedStatement pstmt = conn.prepareStatement(query)) {
pstmt.setInt(1, 7);
// Set the sample chapter
pstmt.____(2, ____);
pstmt.executeUpdate();
System.out.println("Inserted book content!");
}
}
}