हाइबरनेट मेरे हटाए जाने के बाद मैं एक तालिका में एक आईडी को अपडेट करने के लिए एक सुविधा लागू कर रहा हूं। लेकिन मैं कुछ प्रतिक्रिया प्राप्त करना चाहता हूं कि किस दृष्टिकोण पर बेहतर है। साथ ही जिस तालिका में मैं मूल्य अपडेट कर रहा हूं, हाइबरनेट को इसके बारे में पता नहीं है इसलिए मुझे सीधे जेडीबीसी अपडेट करना होगा - यह भी संभव है।हाइबरनेट: इवेंट श्रोता या इंटरसेप्टर, अभ्यास में पेशेवर/विपक्ष क्या हैं?
उत्तर
श्रोता/इंटरसेप्टर का उपयोग करने तक, मैं श्रोता के साथ जाऊंगा - यह उन घटनाओं के मामले में अधिक लचीला है जिन्हें सुनवाई जा सकती है। इंटरसेप्टर का प्राथमिक उद्देश्य ऑब्जेक्ट गुणों का निरीक्षण/परिवर्तन करना पूर्व कुछ ईवेंट (उदा। हटाने) के लिए है; जबकि श्रोता को "पोस्टडेलेट" ईवेंट या many others सुनने के लिए कॉन्फ़िगर किया जा सकता है।
हालांकि, अगर कहा गया टेबल मैप नहीं किया गया है तो आपको या तो क्यों चाहिए? हटाए जाने के बाद आप इसे सीधे अपने कोड में अपडेट कर सकते हैं() (या फ्लश() के बाद फ्लैश() कहा जाता है यदि कोई विदेशी कुंजी शामिल है)।
आप इसे ट्रिगर में भी कर सकते हैं (संभवतः; डेटाबेस के लिए जरूरी जानकारी उपलब्ध है या नहीं)।
जैसा कि मुझे पता है, इंटरसेप्टर हाइबरनेट टीम का पुराना कार्यान्वयन है और श्रोताओं इंटरसेप्टर के नए लचीले संस्करण हैं। इम्हो हाइबरनेट श्रोता को इंटरसेप्टर के रूप में उपयोग करना आसान है।
ऐसा लगता है कि कई श्रोताओं को पसंद करते हैं - वे घटनाओं की एक विस्तृत सूची प्रदान करते हैं और अधिक लचीला होते हैं, लेकिन ऐसी चीजें हैं जो इंटरसेप्टर ऑफर करते हैं और श्रोताओं नहीं करते हैं।
उदाहरण के लिए, यदि आप डेटाबेस में सहेजने से पहले इकाई को संशोधित करना चाहते हैं, तो एक इंटरसेप्टर का उपयोग किया जाना चाहिए।
- 1. हाइबरनेट 4.0.0Final (इंटरसेप्टर इंटरसेप्टर)
- 2. एनएचबेर्नेट: इंटरसेप्टर और श्रोता
- 3. ओरिएंटेशन चेंज इवेंट या श्रोता एंड्रॉइड
- 4. इवेंट श्रोता में मेमोरी रिसाव
- 5. जावास्क्रिप्ट इवेंट श्रोता प्रदर्शन
- 6. एंड्रॉइड कस्टम इवेंट श्रोता
- 7. एनोटेशन के साथ हाइबरनेट इंटरसेप्टर
- 8. जावास्क्रिप्ट में इवेंट श्रोता को कैसे निकालें?
- 9. jQuery इनपुट बटन इवेंट श्रोता
- 10. हाइबरनेट इंटरसेप्टर के अंदर हाइबरनेट सत्र कैसे प्राप्त करें?
- 11. Google मानचित्र v3 InfoBox इवेंट श्रोता जोड़ें
- 12. सर्वोत्तम अभ्यास जीडब्ल्यूटी इवेंट हैंडलिंग
- 13. एएस 3 - इवेंट श्रोता जो केवल
- 14. श्रोता "सॉफ़्टडिलेटेबल लिस्टर" को इवेंट मैनेजर
- 15. टॉमकैट/हाइबरनेट समस्या "सेवर: त्रुटि श्रोता स्टार्ट"
- 16. JQUERY, IFrame में आइटम्स में इवेंट श्रोता जोड़ना?
- 17. सिम्फनी 2: पेज लोड इवेंट श्रोता में रूट प्राप्त करना
- 18. स्प्रिंग में इंटरसेप्टर बनाम पहलुओं?
- 19. जेपीए श्रोता
- 20. ऑब्जेक्ट लिटलल्स और इवेंट श्रोताओं, सर्वोत्तम अभ्यास?
- 21. श्रोता सूची सूचीबद्ध क्यों हैं?
- 22. LINQ अभ्यास अभ्यास या पहेली?
- 23. हाइबरनेट इंटरसेप्टर को कैसे सक्षम करें जब मेरे पास स्प्रिंग द्वारा प्रबंधित मेरा हाइबरनेट लेनदेन हो?
- 24. एंड्रॉइड: श्रोता - ऑनस्टॉप() या ऑनस्ट्रोय()
- 25. वसंत हैंडलर इंटरसेप्टर कैसे तत्काल हैं?
- 26. एक सामग्री स्क्रिप्ट 0 श्रोता में श्रोता
- 27. श्रोता बनाम सेट श्रोता
- 28. Grails फ़िल्टर बनाम इंटरसेप्टर
- 29. हाइबरनेट खोज या कम्पास
- 30. श्रोता
अच्छी तरह से हाइबरनेट एक दृश्य देखता है और मुझे उस डिलीट पर एक सत्र आईडी में पास करने की आवश्यकता है जिसे मैं कहां से पारित नहीं कर सकता। तो जब हाइबरनेट दृश्य पर डिलीट करता है तो "ट्रिगर" ट्रिगर चलता है लेकिन इस रन के बाद मुझे उस व्यक्ति के लिए सत्र आईडी पास करने का कोई तरीका चाहिए जिसने ऑडिट के रूप में दृश्य की आधार तालिका में हटा दिया है। लेकिन इस बेस टेबल हाइबरनेट को कुछ भी नहीं पता है, इसलिए @PostDelete पर मैं एक गैर ओआरएम-एड टेबल पर एक सम्मिलित/अद्यतन कर सकता हूं? –
इसे आज़माएं सोम –
@PostDeleteEvent (आपके श्रोता को पास किया गया) AbstractEvent (https://www.hibernate.org/hib_docs/v3/api/org/hibernate/event/AbstractEvent.html) से फैला है, जिसमें एक मिल सत्र है() तरीका। तो आप या तो 'createSQLQuery() 'का उपयोग कर सकते हैं या अपने एसक्यूएल को नामित क्वेरी के रूप में परिभाषित कर सकते हैं और' getNamedQuery() 'का उपयोग कर सकते हैं, आवश्यक पैरामीटर सेट कर सकते हैं और इसे निष्पादित कर सकते हैं। मैंने PostDeleteListener में विशेष रूप से यह कोशिश नहीं की है, लेकिन मुझे नहीं लगता कि यह क्यों काम नहीं करेगा। – ChssPly76