2011-03-18 17 views
6

मैं एक आवेदन जो आंशिक रूप से जनगणना विभाग TIGER पर निर्भर हो जाएगा बनाने के लिए कोशिश कर रहा हूँ/लाइन्स डेटा शेपफ़ाइलें है, जो एक रिकॉर्ड लेआउट यहाँ परिभाषित किया गया है:JPA और डेकोरेटर पैटर्न

http://www.census.gov/geo/www/tiger/tgrshp2010/TGRSHP10AA.pdf

मेरा विचार है सभी डेटा प्रकारों के लिए सामान्य फ़ील्ड के साथ बेस फीचर क्लास रखने के लिए सजावटी पैटर्न का उपयोग करने के लिए, फिर व्यक्तिगत फीचर प्रकारों (राज्यों, काउंटी, कांग्रेस के जिलों आदि) के लिए सजावटी पैटर्न के माध्यम से इसे विस्तारित करें। हालांकि, मैं होस्टिंग के लिए Google App Engine का उपयोग करने की योजना बना रहा हूं, इसलिए मुझे इसे जेडीओ या जेपीए के माध्यम से करना है। मैं जेपीए पसंद करेंगे।

क्या मैं एक सजाए गए ऑब्जेक्ट को मैप कर सकता हूं? मेरा विचार यह है कि बेस फीचर क्लास को @ एन्टीटी के साथ एनोटेट किया जाएगा, फिर एक्सटेंशन में सजाए गए ऑब्जेक्ट के लिए मैप किए गए फ़ील्ड होंगे। चूंकि जीएई डेटास्टोर आरडीबीएमएस नहीं है, इसलिए मुझे लगता है कि मैं इससे दूर हो सकता हूं।

+0

लिंक मेरे लिए एटीएम टूटा हुआ प्रतीत होता है, लेकिन मैं कुछ सलाह देने की कोशिश करूंगा। आप Google के डेटास्टोर पर डेटा कैसे स्टोर करते हैं, इस पर अत्यधिक निर्भर है कि आप इसे अपने ऐप में मॉडल करने की योजना कैसे बनाते हैं, और आप डेटा से पूछताछ करने की योजना कैसे बनाते हैं। जितना आसान आप अपना डेटा मॉडल बना सकते हैं, उतना ही आसान होना चाहिए। पिछली बार मैंने कोशिश की थी कि मैंने डेटास्टोर पर जेपीए का उपयोग करके सही इकाई संबंध स्थापित करने के लिए परेशान किया। आपको यह भी ध्यान में रखना होगा कि जेपीए डेटा स्टोर करने के लिए डाटास्टोर को कैसे बताएगा। प्रविष्टियां एक ही इकाई समूह में होंगी? ये निर्णय पढ़ने, लिखने/लेनदेन, और आवृत्ति लिखने पर असर डालेंगे। – aglassman

उत्तर

4

यदि आप सजावट पैटर्न का उपयोग करते हैं, तो इसका मतलब है कि आप संरचना का उपयोग करते हैं। तो आप क्या कर सकते हैं बस उस श्रेणी को चिह्नित करें जिसे आप के रूप में सजाने के लिए चाहते हैं और अपने सजावटी में, अपनी सजाए गए वर्ग को Embedded के रूप में चिह्नित करें।

यदि आप विरासत का उपयोग करना पसंद करते हैं, तो आपकी बेस क्लास एक इकाई नहीं है क्योंकि केवल कुछ ऐसा है जिसे आप उत्तराधिकारी बनाना चाहते हैं और खुद को स्टोर नहीं करना डीबी है। बेस क्लास बनाने के लिए जो अन्य वास्तविक इकाइयों से विरासत में प्राप्त होगा, उसके लिए एक टिप्पणी है: @MappedSuperclass

GAE docs के अनुसार, दोनों समर्थित हैं।

उम्मीद है कि यह मदद करता है!

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