2011-09-16 16 views
12

की हाइबरनेट वापसी ऑटो-जेनरेट आईडी मैं अपने स्प्रिंग एप्लिकेशन में डेटाबेस तक पहुंचने के लिए हाइबरनेट टेम्पलेट का उपयोग कर रहा हूं। क्या हाइबरनेट टेम्पलेट में कोई तरीका/तरीका है जो मेरी नई डाली गई पंक्ति के लिए स्वत: जेनरेट आईडी देता है? मेरे मामले में, ऑटो-जेनरेट मान मेरी तालिका की प्राथमिक कुंजी है, जिसे डेटाबेस के अंदर ऑटो-वृद्धि के रूप में परिभाषित किया जाता है।एक नई डाली गई पंक्ति

अधिक जानकारी के लिए, मैं डेटा सम्मिलित करने के लिए saveOrUpdate() विधि का उपयोग करता हूं।

+0

क्या आप मानचित्रण दिखा सकते हैं? – ssedano

उत्तर

30

आप saveOrUpdate() के साथ एक वस्तु को सहेजते हैं वस्तुओं id क्षेत्र ऑटो के साथ अपडेट कर दिया जाएगा id उत्पन्न करता है, तो यह एक आपरेशन बनाने था। इसलिए आप स्वत: जेनरेट आईडी प्राप्त करने के लिए सहेजे गए ऑब्जेक्ट की id प्रॉपर्टी को पुनर्प्राप्त कर सकते हैं।

+0

क्या आप यह कहने के लिए अपना उत्तर बढ़ा सकते हैं कि यह MySQL में कैसे किया जाता है? मैं प्रोफाइलर में कोई भी चुनिंदा LAST_INSERT_ID() नहीं देख सकता (जब मैं SQL सर्वर से कनेक्ट करता हूं तो मुझे scope_identity() दिखाई देता है)। –

+0

ऑब्जेक्ट ऑब्जेक्ट = नया ऑब्जेक्ट; // object.getId() == शून्य saveOrUpdate (ऑब्जेक्ट); object.getId() == डाला गया आईडी – sagits

संबंधित मुद्दे