जिस परियोजना पर मैं काम कर रहा हूं वह सीधे जेडीबीसी डेटा एक्सेस को अपने बॉयलरप्लेट महिमा में उपयोग करता है और किसी भी लेनदेन का उपयोग नहीं करता है। मुझे लेन-देन का उपयोग करना और डेटा एक्सेस विधियों को लिखने के तरीके को सरल बनाना महत्वपूर्ण है, खासकर कुछ बदलावों के साथ। परियोजना काफी समय से आसपास रही है और यह एक ओआरएम ढांचे के अनुकूल नहीं है। यह बहुत सारे सिंगलेट्स (यूघ) का उपयोग करता है और इसे निर्भरता इंजेक्शन का उपयोग करने में सक्षम बनाने के लिए इसे उलझन में काम करता है और मुझे नहीं लगता कि मैं किसी को भी यह समझाने में सक्षम हूं कि हमें अब ऐसा करना चाहिए।आईओसी कंटेनर के बाहर सरल वसंत जेडीबीसी लेनदेन कैसे करें?
मुझे स्प्रिंग जेडीबीसी का इंटरफेस पसंद है, खासकर इसके SimpleJdbcTemplate
के माध्यम से। मेरा सवाल यह है कि प्रत्येक डेटा एक्सेस विधि में या स्प्रिंग आईओसी कंटेनर या एओपी का उपयोग करके कुछ भी प्रोग्रामेटिक रूप से सेट किए बिना, इसके लिए कुछ सरल (प्रति सर्वलेट अनुरोध) लेनदेन को कैसे सक्षम किया जाए। मैंने अपने स्वयं के आर्किटेक्चर के साथ खेला है जो SimpleJdbcTemplate
के समान इंटरफ़ेस के साथ समाप्त होता है और अनुरोध के संदर्भ में इसे कॉल करते समय एक अनुरोध-स्थानीय कनेक्शन और लेनदेन का उपयोग कर सकता है (ServletRequestListener
के माध्यम से ThreadLocal
के साथ)। ऐसा लगता है कि यह अच्छी तरह से काम करता है, लेकिन मुझे लगता है कि स्प्रिंग जेडीबीसी जैसी अच्छी बाहरी पुस्तकालय का उपयोग करना बेहतर होगा।
किसी के पास इसका कोई अनुभव है?
यह काफी काम नहीं करता है कि मैं कैसे सोच रहा था, क्योंकि इसे संभवतः JdbcTemplate पर प्रत्येक कॉल होने के बजाय लेनदेन टेम्पलेट का उपयोग करके उच्च अनुप्रयोग स्तर पर प्रोग्रामेटिक रूप से रैपिंग कॉल की आवश्यकता होगी, यदि संभव हो तो अनुरोध-स्थानीय लेनदेन का उपयोग करें। हालांकि यह ठीक काम करना चाहिए। – ColinD