ตัวอย่างบทแรก
ห้องสมุดสาธารณะเมโทรโพลิแทนกำลังเปิดตัวโครงการ "ลองอ่านก่อนยืม" เพื่อกระตุ้นการยืมหนังสือ ผู้ใช้บริการสามารถอ่านบทแรกของหนังสือออนไลน์ก่อนตัดสินใจยืมเล่มจริงได้ จากการทดสอบในช่วงแรกพบว่าฟีเจอร์นี้ช่วยเพิ่มอัตราการยืมหนังสือได้ถึง 40%
งานของคุณคือพัฒนาฟังก์ชันฝั่ง backend เพื่อจัดเก็บตัวอย่างบทแรกลงในฐานข้อมูล
ตัวอย่างบทแรกซึ่งประกอบด้วยตัวแปร Data.content ได้ถูกโหลดไว้ให้แล้ว
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การคิวรีฐานข้อมูล PostgreSQL ด้วย Java
คำแนะนำการฝึกหัด
- กำหนดพารามิเตอร์ให้กับ prepared statement โดยใช้ character stream จากตัวแปร
charStream
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
public class Main {
public static void main(String[] args) throws SQLException {
Reader charStream = new StringReader(Data.content);
HikariDataSource ds = HikariSetup.createDataSource();
String query = """
INSERT INTO book_content (book_id, sample_chapter) VALUES (?, ?)
ON CONFLICT (book_id) DO NOTHING
""";
try (Connection conn = ds.getConnection();
PreparedStatement pstmt = conn.prepareStatement(query)) {
pstmt.setInt(1, 7);
// Set the sample chapter
pstmt.____(2, ____);
pstmt.executeUpdate();
System.out.println("Inserted book content!");
}
}
}