एक लंबा प्रश्न, कृपया मेरे साथ भालू।EntityManager बनाम इंजेक्शन। EntityManagerFactory
हम एक वेब अनुप्रयोग के लिए स्प्रिंग + जेपीए का उपयोग कर रहे हैं। मेरी टीम GenericDAO
में EntityManagerFactory
इंजेक्शन पर बहस कर रही है (एपीएफएफयूएसई द्वारा प्रदान की गई लाइनों पर जेनेरिक पर आधारित डीएओ, हम किसी कारण से JpaDaosupport
का उपयोग नहीं करते हैं) EntityManager
इंजेक्शन देने पर। हम "एप्लिकेशन प्रबंधित दृढ़ता" का उपयोग कर रहे हैं।
EntityManagerFactory
इंजेक्शन के खिलाफ तर्क यह है कि यह बहुत भारी है और इसलिए इसकी आवश्यकता नहीं है, EntityManager
हमें जो चाहिए वह करता है। साथ ही, जैसा कि वसंत प्रत्येक वेब अनुरोध के लिए डीएओ का एक नया उदाहरण बनायेगा (मुझे शक है) EntityManager
उदाहरण के रूप में कोई समवर्ती समस्या नहीं होगी, उदाहरण दो धागे से साझा किया जाता है।
ईएफएम इंजेक्शन के लिए तर्क यह है कि कारखाने के लिए एक हैंडल रखने के लिए यह हमेशा अच्छा होता है।
मुझे यकीन नहीं है कि सबसे अच्छा तरीका कौन सा है, क्या कोई मुझे प्रबुद्ध कर सकता है?
मैं आगे समझता हूं कि वसंत EntityManager इंजेक्ट करता है, यह "कंटेनर प्रबंधित दृढ़ता" है और यह भी कि वसंत Entitymanagers थ्रेड सुरक्षित "बनाता है"। एसबी –