शुरू करेंमुफ़्त में शुरू करें

Prepared Statements

SQL injection की कमजोरी पता चलने के बाद, CityBook Libraries को बुक सर्च फीचर को सुरक्षित बनाने के लिए आपकी ज़रूरत है. आप injection हमलों को रोकने के लिए साधारण Statement ऑब्जेक्ट्स की जगह PreparedStatement का इस्तेमाल करेंगे.

HikariSetup क्लास पहले से कॉन्फ़िगर की गई है.

यह अभ्यास पाठ्यक्रम का हिस्सा है

Java में PostgreSQL डेटाबेस को क्वेरी करना

पाठ्यक्रम देखें

अभ्यास निर्देश

  • title पैरामीटर के लिए एक placeholder का उपयोग करें.
  • connection से एक PreparedStatement बनाएँ.
  • prepared statement के लिए title पैरामीटर सेट करें.

इंटरैक्टिव व्यावहारिक अभ्यास

इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।

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"));
                }
            }
        }
    }
}
कोड संपादित करें और चलाएँ