spring LocalContainerEntityManagerFactoryBean और LocalEntityManagerFactoryBean के बीच क्या अंतर है?




hibernate jpa (4)

क्या कोई बता सकता है कि स्प्रिंग फ्रेमवर्क के लोकलकॉन्टेनर एंटीटी मैनेजर फैक्ट्रीबीन और लोकलएन्टिटी मैनेजर फैक्ट्रीबीन के बीच क्या अंतर है?


LocalEntityManagerFactoryBean एक अनुप्रयोग-प्रबंधित EntityManagerFactory का उत्पादन करता है।

LocalContainerEntityManagerFactoryBean एक कंटेनर-प्रबंधित EntityManagerFactory का उत्पादन करता है।

रेफरी: स्प्रिंग इन एक्शन - क्रेग वाल्स


LocalEntityManagerFactoryBean

सबसे सरल और सबसे सीमित है। आप मौजूदा जेडीबीसी डेटासोर्स बीन परिभाषा का उल्लेख नहीं कर सकते हैं और वैश्विक लेनदेन के लिए कोई समर्थन मौजूद नहीं है।

LocalContainerEntityManagerFactoryBean

एप्लिकेशन के भीतर लचीली स्थानीय कॉन्फ़िगरेशन की इजाजत देने वाला सबसे शक्तिशाली जेपीए सेटअप विकल्प है। यह मौजूदा जेडीबीसी डाटासोर्स के लिंक का समर्थन करता है, स्थानीय और वैश्विक लेनदेन दोनों का समर्थन करता है

आरईएफ: वसंत-ढांचे-संदर्भ.pdf "वसंत 3"


असल में जेपीए विनिर्देश दो प्रकार के इकाई प्रबंधकों को परिभाषित करता है। वो हैं :

i) आवेदन-प्रबंधित: एप्लिकेशन प्रबंधित इकाई प्रबंधक का अर्थ है "इकाई प्रबंधक केवल एप्लिकेशन (यानी हमारा कोड) द्वारा बनाए और प्रबंधित होते हैं"।

ii) कंटेनर प्रबंधित: कंटेनर प्रबंधित इकाई प्रबंधक का अर्थ है "एंटीटी मैनेजर केवल जे 2 ईई कंटेनर द्वारा बनाए और प्रबंधित किए जाते हैं (यानी हमारा कोड सीधे प्रबंधित नहीं करता है बल्कि इकाई इकाई प्रबंधक कंटेनर द्वारा बनाए और प्रबंधित होते हैं, और हमारे कोड ईएम को किसी तरह से प्राप्त करते हैं जेएनडीआई का उपयोग करना)।

नोट: बनाया गया और प्रबंधित (ऊपर) का अर्थ है "लेनदेन में इकाई प्रबंधक खोलना, बंद करना और शामिल करना"

LocalContainerEntityManagerFactoryBean - कंटेनर प्रबंधित
LocalEntityManagerFactoryBean - एप्लिकेशन प्रबंधित

एक बड़ी नोट: वसंत आधारित अनुप्रयोगों के लिए, अंतर बहुत अधिक नहीं हैवसंत केवल भूमिका निभाता है ( कंटेनर के रूप में यदि आप LocalContainerEntityManagerFactoryBean को कॉन्फ़िगर करते हैं और एप्लिकेशन के रूप में यदि आप LocalEntityManagerFactoryBean को कॉन्फ़िगर करते हैं )


दस्तावेज यह सब कहते हैं:

LocalContainerEntityManagerFactoryBean - लिंक से: LocalContainerEntityManagerFactoryBean जो जेपीए के मानक कंटेनर बूटस्ट्रैप अनुबंध के अनुसार एक जेपीए EntityManagerFactory बनाता है।

LocalEntityManagerFactoryBean - लिंक से: LocalEntityManagerFactoryBean जो जेपीए के मानक स्टैंडअलोन बूटस्ट्रैप अनुबंध के अनुसार एक जेपीए EntityManagerFactory बनाता है।

अनिवार्य रूप से, केवल अंतर यह है कि वे जेपीए EntityManagerFactory कैसे बनाते हैं।





entitymanager