"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > ## मुझे जेपीए और हाइबरनेट में `persist()` बनाम `merge()` का उपयोग कब करना चाहिए?

## मुझे जेपीए और हाइबरनेट में `persist()` बनाम `merge()` का उपयोग कब करना चाहिए?

2024-11-04 को प्रकाशित
ब्राउज़ करें:725

## When Should I Use `persist()` vs. `merge()` in JPA and Hibernate?

जेपीए और हाइबरनेट में पर्सिस्ट() और मर्ज() के बीच अंतर को समझना

जेपीए और हाइबरनेट में, पर्सिस्ट() और मर्ज () विधियाँ संस्थाओं के प्रबंधन और डेटा दृढ़ता को संभालने में महत्वपूर्ण भूमिका निभाती हैं। हालाँकि, उनके व्यवहार में अलग-अलग अंतर हैं।

Persist()

Persist() विधि, जैसा कि JPA विनिर्देश द्वारा परिभाषित है, निम्नानुसार संचालित होती है:

  • यदि इकाई नई है और प्रबंधित नहीं है, तो यह प्रबंधित हो जाती है और लेनदेन होने या फ्लश होने पर डेटाबेस में सहेजी जाएगी।
  • यदि इकाई पहले से ही प्रबंधित या हटा दी गई है, तो यह ऑपरेशन को नजरअंदाज कर दिया जाता है। कैस्केड=PERSIST या कैस्केड=सभी एनोटेशन।
  • Merge()

दूसरी ओर, मर्ज() विधि में शब्दार्थ का एक अलग सेट है:

यदि इकाई अलग हो जाती है, तो उसकी स्थिति को उसी पहचान के साथ पहले से मौजूद प्रबंधित इकाई में कॉपी किया जाता है, या एक नई प्रबंधित प्रतिलिपि बनाई जाती है।

यदि इकाई नई है , एक नई प्रबंधित इकाई बनाई जाती है और उसकी स्थिति आने वाली इकाई से कॉपी की जाती है।
  • यदि इकाई हटा दी जाती है, तो एक अपवाद फेंक दिया जाता है।
  • यदि इकाई प्रबंधित की जाती है, तो ऑपरेशन को नजरअंदाज कर दिया जाता है , लेकिन कैस्केड ऑपरेशन अभी भी संदर्भित इकाइयों पर लागू होते हैं यदि कैस्केड = MERGE या कैस्केड = सभी के साथ एनोटेट किया जाता है।
  • यदि किसी इकाई को एक अन-कैस्केड संबंध के संदर्भ में विलय किया जाता है, तो विलय की गई इकाई से एसोसिएशन उसी पहचान के साथ एक प्रबंधित ऑब्जेक्ट का संदर्भ लौटाएगा।
  • कब Persist() या Merge() का उपयोग करने के लिए
  • इन अंतरों के आधार पर, निम्नलिखित दिशानिर्देश आपको उचित विधि चुनने में मदद कर सकते हैं:

जब चाहें तब Persist() का उपयोग करें एक नई इकाई बनाने या मौजूदा इकाई को अद्यतन करने के लिए जो अभी तक दृढ़ता संदर्भ द्वारा प्रबंधित नहीं है। .

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3