जेडीबीसी और सीतनिद्रा में होना के बीच का अंतर

Anonim

जेडीबीसी बनाम हाइबरनेट

जावा डाटाबेस कनेक्टीविटी (जिसे जेडीबीसी भी कहा जाता है) एक एपीआई विशेष रूप से जावा प्रोग्रामिंग भाषा के लिए बनाया गया है। । यह परिभाषित करता है कि ग्राहक डेटाबेस में डेटा को क्वेरी और अपडेट करने के तरीकों को प्रदान करके एक डेटाबेस तक कैसे पहुंच पा रहा है। यह रिलेशनल डेटाबेस के लिए विशेष रूप से उन्मुख है। यह पहली बार जावा 2 प्लेटफार्म, मानक संस्करण, संस्करण 1. 1 (या J2SE) के एक हिस्से के रूप में बाजार में पेश किया गया था। इसे ओडीबीसी पुल के लिए एक संदर्भ कार्यान्वयन जेडीबीसी के साथ बंडल किया गया था, जो एपीआई के साथ जेवीएम मेजबान वातावरण में किसी भी ओडीबीसी सुलभ डेटा स्रोत के साथ कनेक्शन सक्षम करता है।

हाइबरनेट एक ऑब्जेक्ट ओरिएंटेड मैपिंग लाइब्रेरी (या ओआरएम लाइब्रेरी) है जो विशेष रूप से जावा भाषा के लिए बनाया गया है। यह एक पारंपरिक रिलेशनल डेटाबेस के लिए ऑब्जेक्ट ओरिएंटेड डोमेन मॉडल को मैप करने के लिए रूपरेखा प्रदान करता है। यह ऑब्जेक्ट रिलेशनल प्रतिबाधा बेमेल समस्याओं को भी हल करती है- ऐसी समस्या है जिसमें एक ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग भाषा या स्टाइल में लिखे गए प्रोग्राम द्वारा रिलेशनल डाटाबेस मैनेजमेंट सिस्टम (या आरडीबीएमएस) का इस्तेमाल किया जा रहा है। यह उच्च स्तरीय हैंडलिंग फ़ंक्शंस के साथ सीधा दृढ़ता से संबंधित डाटाबेस एक्सेस की जगह लेता है। यह मुफ़्त है, ओपन सोर्स सॉफ़्टवेयर और जीएनयू कम जनरल पब्लिक लाइसेंस के तहत वितरित किया गया है।

-2 ->

जेडीबीसी विभिन्न प्रकार के लागूकरण की अनुमति देकर एक ही आवेदन द्वारा उपयोग किया जाता है। यह एक तंत्र प्रदान करता है जिसके द्वारा सही जावा संकुल गतिशील रूप से लोड किए जाते हैं और जेडीबीसी ड्रायवर प्रबंधक के साथ पंजीकृत होते हैं - जो एक कनेक्शन फ़ैक्टरी के रूप में उपयोग किया जाता है, जो कि जेडीबीसी कनेक्शन बनाता है। ये कनेक्शन बयान के निर्माण और निष्पादन का समर्थन करते हैं। वे अपडेट स्टेटमेंट हो सकते हैं (उदाहरण के लिए SQLs बनाएं, REPLACE, UPDATE, और DELETE) वे क्वेरी स्टेटमेंट जैसे कि SELECT भी हो सकते हैं। एक जेडीबीसी कनेक्शन भी संग्रहीत कार्यविधियों को लागू कर सकता है- ये है, वे प्रक्रिया जो डेटाबेस डेटा शब्दकोश में संग्रहीत हैं

मुख्य रूप से जावा कक्षाओं से डेटाबेस तालिकाओं को मैप करने के लिए मुख्य रूप से कार्य करता है, साथ ही साथ जावा डेटा प्रकारों से एसक्यूएल डेटा प्रकार तक कार्य करता है। यह डेटा क्वेरी और पुनर्प्राप्ति सुविधाएं भी प्रदान करता है। यह एसक्यूएल कॉल उत्पन्न करने में सक्षम है, इस प्रकार मैन्युअल परिणाम सेट हैंडलिंग और ऑब्जेक्ट रूपांतरण से डेवलपर को राहत मिली है। यह लाइब्रेरी के माध्यम से समर्थित सभी एसक्यूएल डेटाबेस के लिए पोर्टेबल आवेदन रखता है। यह जावा कक्षाओं को एक XML फ़ाइल को कॉन्फ़िगर करके डेटाबेस तालिकाओं में मैप करता है (जिसमें हाइबरनेट हठ वर्गों के लिए कंकाल स्रोत कोड उत्पन्न कर सकता है) या जावा एनोटेशन (जो कि पूर्व कार्यवाही करता है) का उपयोग कर रहा है। सीतनिद्रा में होना भी कस्टम मान प्रकारों के मानचित्रण का समर्थन करता है, जो तीन विशिष्ट परिस्थितियों को संभव बनाता है: डिफ़ॉल्ट एसक्यूएल प्रकार को ओवरराइड करते हुए, हाइबरनेट द्वारा चुने गए एक संपत्ति के लिए कॉलम के मानचित्रण करते समय; जावा एन्यूम को कॉलम में मानचित्रण करना जैसे कि वे नियमित गुण होते थे; और एकाधिक कॉलमों के लिए एकल संपत्ति का मानचित्रण करना

सारांश:

1 जेडीबीसी एक एपीआई है जो परिभाषित करता है कि ग्राहक एक डाटाबेस कैसे उपयोग कर सकता है; सीतनिद्रा में होना एक ORM पुस्तकालय है जो एक पारंपरिक रिलेशनल डेटाबेस के लिए ऑब्जेक्ट ओरिएंटेड डोमेन मॉडल को मैप करने के लिए रूपरेखा प्रदान करता है।

2। जेडीबीसी विभिन्न कार्यान्वयनों की अनुमति देता है और एक ही आवेदन द्वारा उपयोग किया जाता है; जावा कक्षाओं से डेटाबेस तालिकाओं को हाइबरनेट करें।