मैं इसे बैकअप ले सकते हैं नहीं पेशेवर दस्तावेज के किसी भी प्रकार के साथ, लेकिन यहाँ है कि इस मामले पर मेरी राय है। मुझे लगता है कि आपके पास अनुसरण करने के लिए दो संभावित सड़कों हैं।
DTOs केवल
पहले एक मॉडल सेम पर निर्भर करता है सादा DTOs, केवल डेटा हठ के लिए इस्तेमाल किया, कोई तर्क प्रदर्शन किया जाना है। यहां आप अपने POJO फ़ील्ड्स को अनइंस्टाइज्ड छोड़ सकते हैं, क्योंकि सत्र के माध्यम से लगातार ऑब्जेक्ट पुनर्प्राप्त करने से पहले यह स्वचालित रूप से हाइबरनेट द्वारा किया जाएगा। मुझे यकीन है कि आप पहले से ही जानते हैं, कि हाइबरनेट चुपचाप सभी संग्रहों को अपने स्वयं के रैपर में लपेट लेगा, जिसे आंतरिक दृढ़ता तंत्र द्वारा आवश्यक है।
उचित मॉडल वर्गों
दूसरा दृष्टिकोण POJOs एक छोटा सा आगे ले जाता है। इस परिदृश्य में आप गेटर्स और सेटर्स विधियों के भीतर कुछ तर्क कर सकते हैं। यह असामान्य परिदृश्य नहीं है, इसके बाद एमवीसी द्वारा पूरी तरह स्वीकार्य है और अक्सर उन्हें खुद को कुछ कोड जोड़ने की आवश्यकता होती है। उदाहरण के लिए - कुछ जानकारी लॉग इन करने सेटर विधि, उदाहरण के नीचे बुला जबकि:
public void setItems(List<Object> items){
LOGGER.info("Setting '{}' new items", items.size());
this.items = items;
}
उस मामले में, एक मुसीबत में गिर गई सकता है, के रूप में तक मुझे पता है संग्रह इस बिंदु पर हाइबरनेट द्वारा आरंभ नहीं किया जा जाएगा के बाद से। उस मामले में स्पष्ट प्रारंभिकता बेहतर होगी।
अंतिम टिप्पणी: मैं हाइबरनेट पर विशेषज्ञ नहीं हूं, मुझे यह भी नहीं पता कि 4.x में कुछ भी बदल गया है, लेकिन मुझे पता है कि मैंने इस समस्या को किसी बिंदु पर सहन किया है।
स्रोत
2012-01-11 14:17:52
'इंस्टेंस संग्रह' से आपका मतलब 'लगातार संग्रह संपत्ति' है? –
@ माइकपार्ट्रिज हाँ, यही मेरा मतलब था। – Danny