कोई सूची, यदि कोई इंडेक्स कॉलम निर्दिष्ट नहीं है, तो उसे केवल हाइबरनेट (कोई विशिष्ट ऑर्डरिंग) द्वारा बैग के रूप में संभाला जाएगा।
हाइबरनेट के संचालन में एक उल्लेखनीय अंतर यह है कि आप एक ही क्वेरी में दो अलग-अलग सूचियां नहीं ला सकते हैं। उदाहरण के लिए, यदि आपके पास Person
इकाई है जिसमें संपर्कों की सूची और पते की एक सूची है, तो आप अपने सभी संपर्कों और उनके सभी पते वाले व्यक्तियों को लोड करने के लिए एक ही क्वेरी का उपयोग नहीं कर पाएंगे। इस मामले में समाधान कम से कम एक संग्रह के लिए List
के बजाय Set
का उपयोग करने के लिए दो क्वेरी (जो कार्टेशियन उत्पाद से बचाता है) बनाने के लिए है।
जब आप equals
और hashCode
को इकाइयों पर परिभाषित करना चाहते हैं और इकाई में एक अपरिवर्तनीय कार्यात्मक कुंजी नहीं है, तो अक्सर हाइबरनेट के साथ सेट का उपयोग करना मुश्किल होता है।
स्रोत
2011-07-03 13:03:56
और किसी सूची के साथ क्या होता है, इसके विवरण के लिए, http://stackoverflow.com/q/1995080/2495717 देखें। – ben3000