Mulai sekarangMulai gratis

Prepared Statement

Setelah menemukan kerentanan SQL injection, CityBook Libraries membutuhkan Anda untuk mengamankan fitur pencarian buku. Anda akan beralih dari objek Statement sederhana ke PreparedStatement untuk mencegah serangan injection.

Kelas HikariSetup sudah dikonfigurasi.

Latihan ini merupakan bagian dari kursus

Melakukan Query ke Basis Data PostgreSQL di Java

Lihat Kursus

Instruksi latihan

  • Gunakan placeholder untuk parameter title.
  • Buat PreparedStatement dari connection.
  • Tetapkan parameter title untuk prepared statement.

Latihan interaktif langsung praktik

Cobalah latihan ini dengan melengkapi kode contoh ini.

public class Main {
    public static void main(String[] args) throws SQLException {
        HikariDataSource ds = HikariSetup.createDataSource();
        // Set the parameter in the query
        String query = "SELECT * FROM books WHERE title = ____";
        // Create the prepared statement
        try (Connection conn = ds.getConnection();
            PreparedStatement pstmt = ____.____(query)) {
            // Set the title parameter
            pstmt.____(____, "Clean Code");
            try (ResultSet rs = pstmt.executeQuery()) {
                while (rs.next()) {
                    System.out.printf("ID: %d, Title: %s (%d)%n", rs.getInt("book_id"), rs.getString("title"), rs.getInt("publication_year"));
                }
            }
        }
    }
}
Edit dan Jalankan Kode