2012-05-08 21 views
6

मैं वसंत के @Transactional एनोटेशन उपयोग करने के लिए शुरू कर दिया गया है, और यह लेनदेन के प्रबंधन के लिए सुविधा का एक बहुत प्रदान करता है। हालांकि, हमारे कोड में इस एनोटेशन का उपयोग अब हमें वसंत पर निर्भर करता है। मुझे जेपीए प्रकार की सामग्री के साथ पता है कि javax persistence पैकेज है जहां हम जेपीए एनोटेशन के जरिए कोड को सभी प्रकार के साथ चिह्नित कर सकते हैं, लेकिन चूंकि वे सभी javax.persistence से आते हैं, हमारा कोड किसी भी विशिष्ट कार्यान्वयन या ओआरएम पर निर्भर नहीं है।अंतर

मुझे लगता है कि मेरा सवाल यह है कि यदि लेनदेन संबंधी सामानों के लिए कोई समान एनोटेशन है। मुझे javax jta पैकेज मिला, लेकिन मुझे यकीन नहीं है कि वास्तव में कोई सामान्य एनोटेशन है जो वसंत लागू कर सकता है। असल में मैं बस सोच रहा हूं कि क्या कोई सामान्य जेवाक्स-जैसी एनोटेशन है जिसे हम लेनदेन की कार्यक्षमता को प्रबंधित करने के तरीकों पर डाल सकते हैं ताकि हम वसंत पर निर्भर न हों।

+0

जावाईई का कौन सा संस्करण आप उपयोग कर रहे हैं? – skaffman

+0

@skaffman जावा 7 को प्राथमिकता दी जाती है, लेकिन जावा 6 काम करेगा। – dnc253

+0

मैंने जावाई संस्करण कहा, जावाएसई संस्करण नहीं। आपके प्रश्न जावाई एपीआई के कुछ हिस्सों से संबंधित हैं, जो अत्यधिक संस्करण निर्भर है। – skaffman

उत्तर

9

मुझे नहीं लगता कि जावाईई 6 स्प्रिंग करता है जैसे लेनदेन डेमरेक्शन एनोटेशन प्रदान करता है। मुझे लगता है कि निकटतम एनालॉग, ईजेबी स्टेटलेस सत्र बीन्स का उपयोग है, जो प्रकृति द्वारा लेनदेन कर रहे हैं, लेकिन स्पष्ट रूप से इस तरह से निर्धारित नहीं किया गया है (अगर कोई गलत है तो कृपया मुझे सही करें)।

यह आपका कॉल है कि आप किस एपीआई को अपने कोड को जोड़ना चुनते हैं। स्प्रिंग के @Transactional का उपयोग करने का लाभ यह है कि आप उपयोग किए जाने वाले विशिष्ट लेनदेन एपीआई से स्वतंत्र हैं (@Transactional कोड बदलने के बिना जेटीए, जेपीए, हाइबरनेट या कच्चे जेडीबीसी लेनदेन के साथ काम कर सकते हैं)। लेकिन, ज़ाहिर है, आप वसंत से बंधे हैं।

एनोटेशन शैली तुम क्या चाहते है, तो मैं कोई विकल्प नहीं वसंत को देखते हैं, जब तक आप पूरी तरह से JavaEE को गले लगाने और EJB 3.x शैली व्याख्या का उपयोग करना चाहते हैं।

+0

ठीक से उपयोग कर रहे हैं, अच्छी जानकारी जानने के लिए। धन्यवाद। – dnc253