आइए कहें कि मेरे पास दो एप्लिकेशन हैं, प्रत्येक एक अलग ईएआर फ़ाइल के साथ, जो एक दूसरे को एक ही जेटीए लेनदेन के भीतर कॉल करता है। यदि दोनों एक ही इकाई प्रबंधक साझा करते हैं, तो क्या उन्हें एक ही सत्र मिलता है या क्या यह हर बार नया बनाया जाता है?दो ईएआर फाइलें, एक ही जेपीए इकाई प्रबंधक, वही लेनदेन => एक ही सत्र?
उत्तर
एक EntityManager (जेपीए में) एक सत्र (हाइबरनेट में) के बराबर बराबर है। एक शुद्ध जेपीए आवेदन में, आप केवल EntityManager का उपयोग करेंगे। यह एक सत्र encapsulates। सत्र जब तक EntityManager रहता है तब तक रहता है।
एंटिटी मैनेजर को दो अनुप्रयोगों के बीच साझा करने के लिए कोई कारण नहीं है (क्योंकि मुझे कोई तरीका नहीं है), क्योंकि वे अलग-अलग जेवीएम में चलते हैं (कम से कम उन एप्लिकेशन सर्वर पर जिनके साथ मैंने काम किया है)। आप क्या कर सकते हैं EntityManager सेटअप (एक पर्सिस्टेंस यूनिट कहा जाता है) साझा करें। आप इकाई वर्गों और एक्सएमएल को एक जेएआर में डालकर और दोनों अनुप्रयोगों से इसका उपयोग करके ऐसा कर सकते हैं, लेकिन यह वास्तव में कैसे किया जाता है, संभवतः आपके एप्लिकेशन सर्वर पर निर्भर करता है। यह निश्चित रूप से सटीक प्रभाव होगा क्योंकि दूसरे एप्लिकेशन के लिए कक्षाओं और एक्सएमएल को डुप्लिकेट करना होगा।
यह क्या होगा: प्रत्येक दो अनुप्रयोगों में से प्रत्येक का अपना दृढ़ता संदर्भ होगा। इसका मतलब है, जब आप एक आवेदन में एक इकाई लोड करते हैं, तो यह दूसरे में लोड नहीं होगा। यदि आप एप्लिकेशन में किसी इकाई को लोड और संशोधित करते हैं, तो उसे एप्लिकेशन दो में लोड करें, एप्लिकेशन दो को अनमोडिफाइड इकाई दिखाई देगी (सिवाय इसके कि यदि आपके पास बहुत अजीब लेनदेन अलगाव सेटिंग्स और एप्लिकेशन पहले इकाई को फ़्लश करने का निर्णय लेता है)।
कोई भी संघर्ष केवल जेटीए लेनदेन के अंत में ही होगा। मुझे नहीं पता कि तब क्या होगा, और मुझे लगता है कि यह आपके डेटाबेस और लेनदेन सेटिंग्स पर निर्भर करता है। यदि दोनों एप्लिकेशन एक ही डेटा पर अलग-अलग चीजों को करने का प्रयास करते हैं तो शायद लेनदेन वापस रोल करेगा। प्रत्येक एप्लिकेशन का अपना डेटाबेस कनेक्शन होगा। वे जेटीए लेनदेन द्वारा एक साथ बंधे हैं, इसलिए यह सुनिश्चित किया जाता है कि दोनों प्रतिबद्ध हैं या दोनों रोल वापस हैं।
- 1. जेपीए: एक ही इकाई प्रकार
- 2. जेपीए एकाधिक लेनदेन प्रबंधक
- 3. दो एक ही समय
- 4. कोर डाटा एक ही इकाई
- 5. लेनदेन और symfony2 इकाई प्रबंधक
- 6. दो एक ही उपयोगकर्ता ID
- 7. Magento $ आदेश-> getAllItems() दो बार एक ही आइटम
- 8. एक ही सत्र में एकाधिक WebRequest
- 9. रिलेशन ManyToOne, javax.persistence.EntityExistsException: एक ही पहचानकर्ता मूल्य के साथ एक अलग वस्तु पहले से ही सत्र
- 10. इकाई मीटर => एक ->> एक
- 11. क्या जेपीए इकाई प्रबंधक बंद होना चाहिए?
- 12. एक ही अभिव्यक्ति में दो बार विभाजित?
- 13. एक ही कक्षा के दो विभिन्न सेम
- 14. Zend दो बटन एक ही नाम
- 15. एक ही आईडी के साथ दो विचार
- 16. मैं दो एक ही आकार सरणियों
- 17. दो इंटरफेस एक ही विधि का नाम
- 18. दो धागे रोकें एक ही मूल्य
- 19. एक ही धुरी में दो तराजू
- 20. एक ही पृष्ठ में दो प्रमाणीकरणसमूह
- 21. दो लोगों को एक ही समय
- 22. दो divs एक ही स्क्रॉलबार साझा करें?
- 23. एक ही गतिविधि के लिए दो लॉन्चर्स
- 24. दो '==' समानता ऑपरेटर एक ही 'अगर' स्थिति
- 25. दो फ़ाइल डिस्क्रिप्टर एक ही फ़ाइल में
- 26. कैसे पता चलेगा कि एक अलग जेपीए इकाई पहले से ही जारी है या नहीं?
- 27. सीडीआई सत्र स्कोप्ड बीन एक ही सत्र में दो उदाहरणों में परिणाम
- 28. एक ही
- 29. एक ही
- 30. जेपीए में एक ही प्रकार के 2 संग्रह कैसे हैं?
एप्लिकेशन क्लास फाइलों को साझा करते हैं? –
हां, संस्थाएं और कुछ सामान्य एपीआई – Mauli
क्या आपने विस्तारित दृढ़ता संदर्भों का उपयोग करने के लिए अपने इकाई प्रबंधक को कॉन्फ़िगर किया है? – HDave