Zacznij terazZacznij za darmo

Odczytywanie przykładowych rozdziałów

Funkcja „Sprawdź przed wypożyczeniem" Miejskiej Biblioteki Publicznej pomyślnie zapisuje przykładowe rozdziały. Teraz musisz zaimplementować funkcję pobierania danych, dzięki której czytelnicy będą mogli przeglądać te fragmenty na stronie biblioteki.

Ponieważ przykładowe rozdziały mogą zawierać tysiące znaków, do efektywnego odczytu danych użyj strumieniowania. Zamiast ładować całe rozdziały do pamięci na raz, będziesz je odczytywać w małych porcjach przy użyciu bufora znakowego.

To ćwiczenie jest częścią kursu

Zapytania do bazy danych PostgreSQL w Javie

Zobacz kurs

Instrukcje do ćwiczenia

  • Odczytaj strumień ze zbioru wyników dla kolumny sample_chapter.
  • Ustaw rozmiar bufora na 30 znaków.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

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));
            }
        }
    }
}
Edytuj i uruchom kod