2010-02-12 32 views
14

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

उत्तर

9

चर्चा होने आप डाटा न्यूक्लियस का उपयोग कर रहे के बाद से, बनाम जेपीए JDO पर अपने सामान्य प्रश्न देखें लग रहा है। http://www.datanucleus.org/products/accessplatform_2_1/jdo_jpa_faq.html

डेटा न्यूक्लियस एक्सेसप्लार्टर जावा दृढ़ता के जेडीओ और जेपीए विनिर्देशों दोनों का समर्थन करता है। इस तरह के पास किसी भी तकनीक में "निहित ब्याज" नहीं है, मानना ​​है कि यह उपयोगकर्ताओं के लिए यह चुनना है कि वे सबसे अच्छा क्या पसंद करते हैं। आरडीबीएमएस विक्रेताओं द्वारा बड़े पैमाने पर पीड़ित जेडीओ और जेपीए के बारे में वेब पर बहुत अधिक एफयूडी रही है। यह पूछे जाने वाले प्रश्न इन बातों

+0

का उपयोग करने की आवश्यकता होगी लिंक फिर से मर चुका है। –

0

जेपीए दृढ़ता के लिए अग्रणी जावा मानक है। तो यदि आप आरडीबीएमएस का उपयोग कर रहे हैं और ओआरएम की आवश्यकता है तो मैं जेपीए का उपयोग करूंगा।
हाइबरनेट आमतौर पर जेपीए कार्यान्वयन के रूप में उपयोग किया जाता है। यदि आपको कुछ अतिरिक्त सुविधाओं की आवश्यकता है तो आप हाइबरनेट विशिष्ट एनोटेशन का उपयोग कर सकते हैं।

यह सवाल पहले से ही यहाँ JDO vs JPA for Java on Google App Engine

+0

लेकिन मैं डेटा न्यूक्लियस का उपयोग करके Google डेटास्टोर (बिग टेबल) का उपयोग करना चाहता हूं। जो मैं जेपीए या जेडीओ – user246160

+2

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

2

के कई को सही एक प्रमुख अंतर JDO (डेटा के साथ एक साथ तर्क) एक अमीर डोमेन मॉडल का समर्थन करने वाले, वास्तव में सभी जारी वर्गों वर्तमान PersistenceManager के लिए एक संदर्भ, इस मुद्दे प्रश्नों हो सकता है, और है, मुझे लगता है, डिफ़ॉल्ट रूप से फ़ील्ड लगातार नहीं होना संभव है।

जेपीए ऐसे सॉफ्टवेयर डिज़ाइन का समर्थन नहीं करता है। असल में प्रत्येक इकाई में PersistenceManager का संदर्भ नहीं होता है, ताकि आपको थ्रेडलोकल वेरिएबल्स का सहारा लेना पड़े, जो एक बहुत ही सुरुचिपूर्ण और मजबूत समाधान नहीं है।

2

चूंकि जीएई बिगटेबल आरडीबीएमएस नहीं है, जेडीओ बेहतर विकल्प है। Aphache JDO में कुछ विस्तृत तुलना लेख हैं, यह मेरे लिए सहायक है।

1

जेपीए ओआरएम के माध्यम से डेटा को रिलेशनल करने के लिए जावा ऑब्जेक्ट्स को जारी रखता है, जबकि जेडीओ जावा ऑब्जेक्ट दृढ़ता के लिए अधिक सामान्य विनिर्देश है। तो जेडीओ का उपयोग करके आप अपनी वस्तुओं के लिए भंडारण कार्यान्वयन विकल्पों में अधिक स्वतंत्रता देंगे।

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