BaşlayınÜcretsiz başlayın

Prepared Statements

SQL enjeksiyonu güvenlik açığını keşfettikten sonra, CityBook Libraries kitap arama özelliğini güvenceye almanı istiyor. Enjeksiyon saldırılarını önlemek için basit Statement nesnelerinden PreparedStatement kullanımına geçeceksin.

HikariSetup sınıfı zaten yapılandırıldı.

Bu egzersiz, kursun bir parçasıdır

Java ile PostgreSQL Veritabanına Sorgu Yazma

Kursa Göz Atın

Egzersiz talimatları

  • Başlık parametresi için bir yer tutucu kullan.
  • Bağlantıdan bir PreparedStatement oluştur.
  • Hazırlanmış ifade için title parametresini ayarla.

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

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"));
                }
            }
        }
    }
}
Kodu Düzenle ve Çalıştır