"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > कैसे सुरक्षित रूप से एक JDBC तैयार करने के लिए पैरामीटर पास करें?

कैसे सुरक्षित रूप से एक JDBC तैयार करने के लिए पैरामीटर पास करें?

2025-02-05 पर प्रकाशित
ब्राउज़ करें:729

] निम्नलिखित कोड एक पैरामीटर के साथ एक तैयार की जानी का उपयोग करके एक तालिका से एक विशिष्ट पंक्ति का चयन करने का प्रयास करता है:

How to Safely Pass Parameters to a JDBC PreparedStatement?
सार्वजनिक वर्ग सत्यापन { // ... सार्वजनिक सत्यापन (स्ट्रिंग userid) { कोशिश { // ... कथन = con.preparestatement ( "चयन करें * कर्मचारी से जहां उपयोगकर्ता =" "" "उपयोगकर्ता); // ... } पकड़ (अपवाद पूर्व) { // ... } } // ... }

हालांकि, यह कोड काम नहीं कर सकता है क्योंकि SQL स्टेटमेंट को सही ढंग से स्वरूपित नहीं किया गया है।

RepedStatement, SetString () विधि का उपयोग करें:

कथन = con.preparestatement ("का चयन करें * कर्मचारी जहां उपयोगकर्ता =?"); Statek.SetString (1, userid);
public class Validation {

    // ...

    public Validation(String userID) {
        try {
            // ...
            statement = con.prepareStatement(
                    "SELECT * from employee WHERE  userID = "   "''"   userID);
            // ...
        } catch (Exception ex) {
            // ...
        }
    }

    // ...
}
यह विधि निर्दिष्ट उपयोगकर्ता आईडी के लिए पहले पैरामीटर (?) का मान सेट करती है। यह सुनिश्चित करता है कि कथन को ठीक से स्वरूपित किया गया है और SQL इंजेक्शन को रोकता है, एक सुरक्षा भेद्यता जो तब होती है जब दुर्भावनापूर्ण SQL कोड को एक क्वेरी में इंजेक्ट किया जाता है।
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3