시작하기무료로 시작하기

샘플 챕터 읽기

Metropolitan Public Library의 "Try Before You Borrow" 기능이 샘플 챕터를 성공적으로 저장하고 있어요. 이제 이용자들이 도서관 웹사이트에서 이 미리 보기를 실제로 읽을 수 있도록, 조회 기능을 구현해야 해요.

샘플 챕터는 수천 자에 이를 수 있으므로, 데이터를 효율적으로 읽기 위해 스트리밍을 사용하겠습니다. 장 전체를 한 번에 메모리에 올리는 대신, 문자 버퍼를 사용해 작은 청크 단위로 읽어 들일 거예요.

이 연습은 강의의 일부입니다

Java에서 PostgreSQL 데이터베이스 질의하기

강의 보기

연습 안내

  • 결과 집합에서 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));
            }
        }
    }
}
코드 편집 및 실행