سؤال

لقد استخدمت تطبيقات JPA التالية:

  1. بيات شتوى،
  2. Toplink،
  3. Openjpa.

كل واحد منهم لديه نقاط القوة والضعف الخاصة بهم. لقد وجدت السبات الأكثر تقدما في الثلاثة ما عدا أنه خلط بعض التحسينات الخاصة به مع JPA مما جعل من الصعب تبديل مقدمي الآخرين. الأهم من ذلك، كان محلل الاستعلام الخاص به أكثر تساهلا عند تفسير JPA. إنها تجعل من الصعب قليلا الحصول على المكتبات الصحيحة لدعم السبات لأنني وجدت أنها مهمة تحاول الحصول على الإصدارات المناسبة لجميع التبعيات.

كان Toplink موافق ولكن يتم ترك المرء مع الشعور بأنه يشلل قليلا كما يبدو أوراكل تريد منك استخدام / شراء؟ مكتبة أكثر تقدما. كانت محاولة تنزيلها أيضا مهمة لأنك تحتاج إلى تثبيته عبر تشغيل ملف جرة. لقد وجدت أنها نفذت فقط قاعدة JPA المواصفات. السبب في أنني استخدمت أنه يستخدم السبات الكثير من المكتبات يستخدم عادة في مشاريع أخرى مفتوحة المصدر التي سيحصل عليها المرء مشاكل في الفصل الدراسي، خاصة عند استخدام JBoss

Openjpa - هذا لديه أفضل وثائق أفضل، ويسهل التنزيل والاستخدام ولكن يبدو أن عربات التي تجرها الدواب للغاية. ربما لها فقط رمز بلدي ولكن التعليمات البرمجية وجدت استخدام أكثر تقدما مثل علاقات Onetomany مع Cascadetype.all مجموعة فقط لا يبدو أن العمل. من المسلم به أنه قد يكون رمزي الذي كان خاطئا وليس لدي وقت لاختبار قضية نظيفة ولكن العديد من الحوادث مثل هذا اتركني خائفة لاستخدامها. آمل حقا أن تتحسن. غالبا ما تكون رسائل الخطأ في كثير من الأحيان في المساعدة في حل المشكلة.

ما هي المكتبات الأخرى التي استخدمت أشخاصا وأي منها يفضلون ولماذا؟

هل كانت مفيدة؟

المحلول

كان لي نفس الاستنتاجات حول هذه التطبيقات.

  1. كان Openjpa / بدا عربات التي تجرها الدواب

  2. كان السبات الكثير من المكتبات ويبدو أن تواجه مشكلة ليس كسول تحميل كل شيء.

  3. انتهى Toplink كخياري. لم يكن مرنا، حيث كان السبات كان سوى ذلك يعمل ولا يتعين علي تثبيته بدء تشغيل العموم.

الشخص الذي سأحاوله التالي هو JPox، الذي تم تأييده مؤخرا DataNucleus..

نصائح أخرى

أنا شخصيا لا أشعر أن Openjpa ناضج بما فيه الكفاية حتى الآن. هناك العديد من المكتبات المصدر المفتوحة أكثر نضجا وأنت أفضل استخدام تلك. هذه هي تلك التي أعتبرها من أجل:

  1. بيات شتوى. كان السبات موجودا لفترة طويلة وقد مهدت حقا الطريق للورم في جافا. المشكلة الوحيدة التي لدي مع السبات هي الترخيص. إنها مرخصة LGPL التي قد تسبب بعض الشركات التجارية في التقليل (لأسباب لن أذهب إلى هنا). على أي حال، إذا كانت LGPL مشكلة بالنسبة لك، فمن المحتمل أن تكون جيدا لتوجيه واضح.

  2. eclipselink. بعض الخلفية على eclipselink. وكان أساسيات Toplink النسخة المجانية Oracle من تطبيق JPA الخاص بهم. تم أخذ Eclipselink من Toplink، تنفيذ Oracle في مهب JPA الكامل. سيكون Eclipselink هو موفر JPA 2.0 ل Glassfish v3.0، لذلك يبدو أن كل شيء يتحرك بعيدا عن أساسيات Toplink وإلى Eclipselink. على الرغم من أن إصدار Eclipselink هو 1.0.2 فقط، كان المنتج موجودا لفترة طويلة تحت أسماء أخرى.

المشروع الذي أعمل عليه هو على أساسيات Toplink الآن ولكننا نخطط للتبديل إلى Eclipselink قريبا. كانت السبات خارج قضايا الترخيص التي ذكرتها في وقت سابق.

يعرف Openjpa باسم Kodo، وهو ما اشترى قبل وقت طويل. كان Kodo تنفيذ jdo والآن JPA. أيضا، نحن نستخدم Openjpa بشكل مكثف تماما. وهكذا، أنا لا يقول أنه ليس ناضجا. لا بأس أن أقترح استخدام السبات، وهي أغلفة JPA حول السبات.

سبب؟ 1) JPA مشابهة جدا للسبات 2) العديد من مواقف العمل لديها شرط السبات. من الأفضل أن تميل إلى المنتجات السائدة ... أساسا

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top