ComenzarEmpieza gratis

Lectura de capítulos de muestra

La función "Prueba antes de prestar" de la Biblioteca Pública Metropolitana está guardando correctamente los capítulos de muestra. Ahora necesitas implementar la funcionalidad de recuperación para que las personas usuarias puedan leer estas previsualizaciones en la web de la biblioteca.

Como los capítulos de muestra pueden contener miles de caracteres, usarás streaming para leer los datos de forma eficiente. En lugar de cargar capítulos completos en memoria de una vez, los leerás en pequeños fragmentos usando un búfer de caracteres.

Este ejercicio forma parte del curso

Consultas a una base de datos PostgreSQL en Java

Ver curso

Instrucciones del ejercicio

  • Lee el flujo desde el conjunto de resultados para la columna sample_chapter.
  • Define el tamaño del búfer para leer 30 caracteres.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

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 y ejecutar código