Kom igångKom igång gratis

Läsa exempelkapitel

Metropolitan Public Librarys funktion "Prova innan du lånar" lagrar nu exempelkapitel. Nu behöver du implementera hämtningsfunktionaliteten så att låntagarna faktiskt kan läsa förhandsvisningarna på bibliotekets webbplats.

Eftersom exempelkapitel kan innehålla tusentals tecken använder du strömning för att läsa data på ett effektivt sätt. I stället för att läsa in hela kapitel i minnet på en gång läser du dem i små delar med hjälp av en teckenbuffert.

Den här övningen är en del av kursen

Fråga en PostgreSQL-databas i Java

Visa kurs

Övningsinstruktioner

  • Läs strömmen från resultamängden för kolumnen sample_chapter.
  • Ange buffertstorleken till 30 tecken.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

public class Main {
    public static void main(String[] args) throws SQLException, IOException, ClassNotFoundException {
        HikariDataSource ds = HikariSetup.createDataSource();
        String query = """
            SELECT book_id, sample_chapter FROM book_content bc
            """;
        try (Connection conn = ds.getConnection();
             PreparedStatement pstmt = conn.prepareStatement(query);
             ResultSet rs = pstmt.executeQuery()) {
            while (rs.next()) {
				// Read the stream from the result set
                ____ reader = rs.____("sample_chapter");
                // Read the first 30 characters
                char[] cb = new ____[____];
                reader.read(cb);
                System.out.printf("Book Id: %d, sample chapter: %s ...\n", rs.getInt("book_id"), new String(cb));
            }
        }
    }
}
Redigera och kör kod