मैं फ्लश () विधि के बारे में जानकारी जुटा रहा था, लेकिन इसका उपयोग कब और कैसे सही तरीके से करना है, यह मैं बिल्कुल स्पष्ट नहीं हूं। मैंने जो पढ़ा है, उससे मेरी समझ यह है कि दृढ़ता संदर्भ की सामग्री को डेटाबेस के साथ सिंक्रनाइज़ किया जाएगा, अर्थात बकाया विवरण जारी करना या इकाई डेटा को ताज़ा करना।
अब मुझे दो संस्थाओं A
और B
(एक-से-एक रिश्ते में, लेकिन जेपीए द्वारा लागू या लागू नहीं) के साथ निम्नलिखित परिदृश्य मिला । A
एक समग्र पीके है, जो मैन्युअल रूप से सेट किया गया है, और इसमें एक ऑटो-जनरेट किया गया पहचान क्षेत्र भी है recordId
। इसे एक विदेशी-कुंजी के रूप में recordId
इकाई के लिए लिखा जाना चाहिए । मैं बचत कर रहा हूं और एक ही लेनदेन में। समस्या यह है कि लेन-देन के भीतर ऑटो-जनरेटेड वैल्यू उपलब्ध नहीं है, जब तक कि मैं कॉल करने के बाद स्पष्ट कॉल नहीं करता । (यदि मेरे पास स्वतः-जनरेट की पहचान पीके है तो मान सीधे इकाई में अद्यतन किया जाता है, लेकिन यहाँ ऐसा नहीं है।)B
A
A
B
A.recordId
em.flush()
em.persist()
A
कर सकते हैं em.flush()
जब यह एक लेन-देन के भीतर उपयोग कर किसी भी नुकसान का कारण?