मैं निम्नलिखित से बचूंगा
sql.append("SELECT * FROM ").append("dogs_table");
sql.append(" WHERE ").append(colName).append("='");
sql.append(colValue).append("'");
और इसके बजाय PreparedStatement
का उपयोग करें इसके संबंधित पैरामीटर सेटर विधियों के साथ (setString()
) आदि। यह colValue
. के मानों के साथ समस्याओं को रोकेगा उद्धरण, और SQL इंजेक्शन हमले (या अधिक सामान्यतः, colValue
कुछ SQL सिंटैक्स बनाना)।
मैं कभी नहीं यदि संग्रह केवल खाली था तो एक शून्य लौटाएं। यह क्लाइंट के दृष्टिकोण से बहुत ही प्रति-सहज, और पूरी तरह से अप्रत्याशित लगता है।
मैं त्रुटि स्थितियों में शून्य वापस करने की अनुशंसा नहीं करता, क्योंकि आपके क्लाइंट को स्पष्ट रूप से इसकी जांच करनी है (और शायद भूल जाएगी)। यदि आवश्यक हो तो मैं एक खाली संग्रह वापस कर दूंगा (यह आपकी टिप्पणी के समान हो सकता है। एक शून्य वस्तु), या अधिक संभावना है कि अपवाद फेंक दें (परिस्थितियों और गंभीरता के आधार पर)। अपवाद इस मायने में उपयोगी है कि इसमें सामने आई त्रुटि से संबंधित कुछ जानकारी होगी। नल आपको कुछ नहीं बताता।
Dog
. बनाने के दौरान यदि कोई समस्या आती है तो आपको क्या करना चाहिए? वस्तु ? मुझे लगता है कि यह इस बात पर निर्भर करता है कि आप अपने आवेदन को कितना मजबूत और लचीला बनाना चाहते हैं। क्या Dog
. का उपसमुच्चय लौटाने में समस्या है? या यह पूरी तरह से विनाशकारी होगा और आपको इसकी रिपोर्ट करने की आवश्यकता है? यह एक आवेदन आवश्यकता है (मुझे अतीत में किसी भी परिदृश्य को पूरा करना पड़ा है - सर्वोत्तम-प्रयास या सभी या कुछ नहीं )।
अवलोकन के एक जोड़े। मैं HashMap
का उपयोग करूंगा। पुराने Hashtable
. के बजाय (सभी एक्सेस के लिए सिंक्रोनाइज़ किया गया है और इससे भी महत्वपूर्ण बात यह है कि उचित Collection
नहीं है - अगर आपके पास Collection
है आप इसे किसी भी . की अपेक्षा करने वाली किसी अन्य विधि से पास कर सकते हैं Collection
), और StringBuilder
StringBuffer
से अधिक समान कारणों से। कोई बड़ी समस्या नहीं है, लेकिन जानने लायक है।