Đọc chương mẫu
Tính năng "Dùng thử trước khi mượn" của Metropolitan Public Library đã lưu trữ thành công các chương mẫu. Giờ bạn cần triển khai chức năng truy xuất để độc giả có thể đọc các phần xem trước này trên trang web của thư viện.
Vì các chương mẫu có thể chứa hàng nghìn ký tự, bạn sẽ dùng streaming để đọc dữ liệu hiệu quả. Thay vì nạp toàn bộ chương vào bộ nhớ cùng lúc, bạn sẽ đọc theo từng phần nhỏ bằng một bộ đệm ký tự.
Bài tập này là một phần của khóa học
Truy vấn cơ sở dữ liệu PostgreSQL trong Java
Hướng dẫn bài tập
- Đọc luồng từ result set cho cột
sample_chapter. - Đặt kích thước bộ đệm để đọc 30 ký tự.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
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));
}
}
}
}