ComeçarComece de graça

Lendo capítulos de amostra

O recurso "Experimente antes de pegar emprestado" da Metropolitan Public Library está armazenando capítulos de amostra com sucesso. Agora você precisa implementar a funcionalidade de recuperação para que os leitores possam realmente visualizar esses trechos no site da biblioteca.

Como os capítulos de amostra podem conter milhares de caracteres, você vai usar streaming para ler os dados com eficiência. Em vez de carregar capítulos inteiros na memória de uma vez, você vai lê-los em pequenos blocos usando um buffer de caracteres.

Este exercício faz parte do curso

Consultando um banco de dados PostgreSQL em Java

Ver curso

Instruções do exercício

  • Leia o stream do conjunto de resultados para a coluna sample_chapter.
  • Defina o tamanho do buffer para ler 30 caracteres.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

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));
            }
        }
    }
}
Editar e executar o código