जेडीबीसी ResultSet getObject, getInt, getString इत्यादि प्रदान करता है, और PreparedStatement समान सेटर्स हैं। टाइप संकलन-समय प्रकार की सुरक्षा के अलावा, टाइप करें विशिष्ट गेटर्स/सेटर्स के पास कोई (डी) फायदे हैं, या यह हर जगह getObject/setObject का उपयोग करना ठीक है?जेडीबीसी get/setObject बनाम प्राप्त/सेट स्पेसिफिक टाइप
7
A
उत्तर
5
कोई वास्तविक तकनीकी (डी) फायदे नहीं हैं। यदि आप बाद में टाइपशेकिंग/कास्टिंग कर रहे हैं तो वे केवल कार्यात्मक रूप से हानिकारक हो सकते हैं।
मैं अपने आप को ResultSet#getObject()
का उपयोग केवल जब दिए गए मान एक आदिम जो NULL
को डीबी चूक और घोषित मूल्य आदिम के लिए एक आवरण है है। जैसे Integer age
:
user.setAge(resultSet.getObject("age") != null ? resultSet.getInt("age") : null);
और मैं PreparedStatement#setObject()
का उपयोग व्यावहारिक रूप से हर समय, एक उपयोगिता विधि में:
public static void setValues(PreparedStatement preparedStatement, Object... values) throws SQLException {
for (int i = 0; i < values.length; i++) {
preparedStatement.setObject(i + 1, values[i]);
}
}
संबंधित मुद्दे
- 1. वसंत जेडीबीसी बनाम जेडीबीसी
- 2. बनाम टाइप
- 3. जीएडीटी बनाम मल्टीपार्म टाइप टाइप
- 4. ओआरएम समाधान (जेपीए; हाइबरनेट) बनाम जेडीबीसी
- 5. स्प्रिंग हाइबरनेट बनाम जेडीबीसी टेम्पलेट बनाम वसंत ओआरएम
- 6. जेडीबीसी
- 7. टाइपडिस्क्रिप्टर। गेटप्रॉपर्टीज() बनाम टाइप। गेटप्रॉपर्टीज()
- 8. जेडीबीसी
- 9. जेडीबीसी
- 10. जेडीबीसी
- 11. जेडीबीसी
- 12. जेडीबीसी
- 13. जेडीबीसी
- 14. जेडीबीसी
- 15. जेडीबीसी
- 16. जेडीबीसी
- 17. जेडीबीसी
- 18. जेडीबीसी
- 19. जेडीबीसी
- 20. जेडीबीसी
- 21. जेडीबीसी
- 22. डायनामिक कीवर्ड बनाम ऑब्जेक्ट डेटा टाइप
- 23. स्टेटिक टाइप बाध्यकारी बनाम गतिशील प्रकार बाध्यकारी
- 24. असेंबली। गेट एक्सपोर्टेड टाइप प्रकार बनाम GetTypes
- 25. स्कैला स्ट्रिंग बनाम java.lang.String - टाइप अनुमान
- 26. एनम बनाम मजबूत टाइप किए गए enum
- 27. नोडजेस बफर बनाम टाइप किए गए सरणी
- 28. सी #: डीबीटी टाइप। स्ट्रिंग बनाम डीबीटीइप.एन्सीस्ट्रिंग
- 29. जेडीबीसी कनेक्शन- क्लास .forनाम बनाम क्लास .forName()। नया इंस्टेंस?
- 30. मल्टीथ्रेडेड जेडीबीसी