मैं एक वास्तुकला हाइबरनेट/जेपीए/स्प्रिंग/Zk पर काम कर रहा हूँ, और मैं इन दिनों सवालों गुणा क्योंकि मैं ढांचे का एक बहुत सीखना चाहिए।OpenSessionInView बनाम PersistentContext (विस्तारित)
मेरे पास एक प्रश्न है जो मुझे कई दिनों तक परेशान करता है।
मैं "पैटर्न" OpenSessionInView आलसी लोड हो रहा है बनाने के लिए जिंदा एक हाइबरनेट लेन-देन रखने के लिए के बारे में सुना है। कई लोग यह भी कहते हैं कि पैटर्न बहुत साफ नहीं है।
और अन्य पर, यह कहा जाता है कि PersistentContext बढ़ाया सुरक्षित थ्रेड नहीं है, और इसलिए जीवित रखने entityManager के लिए उपयुक्त नहीं है।
तो, इन समस्याओं का वास्तविक समाधान क्या है? मुझे लगता है कि ये मुद्दे AJAX के परिचय से उत्पन्न होते हैं जो विशेष रूप से आलसी लोडिंग के उपयोग के साथ कुछ भारी संग्रह लोड करने के लिए अधिक संभावनाओं को अनुमति देता है।
पल के लिए, मैंने विस्तारित मोड में @PersistenceContext को आजमाया। यह काम कर रहा है ... मुझे इसे अपने जुनीट परीक्षणों के लिए सेट करना था, और यह मेरे वेब एप्लिकेशन में भी अधिक विन्यास के बिना आलसी लोडिंग के साथ काम कर रहा है।
है कि ढांचा (स्प्रिंग, जेपीए 2.0) के विकास का मतलब यह अब आसान और PersistentContext के साथ और अधिक "क्लीन" काम है?
अगर ऐसा नहीं है, तो हम वसंत से OpenSessionInViewFilter का उपयोग करें और लेन-देन संबंधी मोड में PersistentContext बदलना चाहिए?
धन्यवाद।