НачатьНачать бесплатно

Чтение примерных глав

Функция «Попробуй перед тем, как взять» в Столичной публичной библиотеке успешно сохраняет примерные главы. Теперь нужно реализовать функцию получения данных, чтобы читатели могли просматривать эти фрагменты на сайте библиотеки.

Поскольку примерные главы могут содержать тысячи символов, для эффективного чтения данных вы воспользуетесь потоковой передачей. Вместо того чтобы загружать целые главы в память сразу, вы будете читать их небольшими фрагментами с помощью символьного буфера.

Это упражнение является частью курса

Работа с базой данных PostgreSQL на Java

Посмотреть курс

Инструкции к упражнению

  • Считайте поток из результирующего набора для столбца sample_chapter.
  • Установите размер буфера в 30 символов.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

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));
            }
        }
    }
}
Редактировать и запускать код