سؤال

لدي Java\الربيع\السبات التطبيق - كاملة مع المجال الطبقات التي هي في الأساس السبات POJOs

هناك قطعة من الوظائف التي أعتقد أنها يمكن أن تكون مكتوبة بشكل جيد في الكؤوس.

وأود أن إعادة استخدام المجال الطبقات التي خلقت في الرئيسية جافا التطبيق

ما هي أفضل طريقة للقيام بذلك ؟

يجب أن أكتب المجال الجديد الطبقات تمديد جافا الطبقات ؟ هذا يبدو مبتذل أو يمكن أنا 'إنشاء' تحكم قبالة جاوة المجال الطبقات ؟

ما هي أفضل الممارسات حول إعادة استخدام جافا المجال الكائنات في الكؤوس\رائع أنا متأكد من يجب أن يكون هناك آخرون كتابة بعض القطع في الكؤوس\رائع

إذا كنت تعرف عن البرنامج التعليمي الذي يتحدث عن مثل هذا التكامل - التي من شأنها أن تكون رهيبة !!!

PS:أنا جدا مبتدئ في الكؤوس-رائع جدا قد يكون في عداد المفقودين واضحة.شكرا !!!

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

المحلول

هل حقا تريد/تحتاج إلى استخدام الكؤوس بدلا من مجرد رائع ؟

الكؤوس في الحقيقة ليست شيئا يمكنك استخدامها لإضافة جزء إلى القائمة التطبيق على شبكة الإنترنت.كله "الاتفاقية على تكوين" نهج يعني أن لديك إلى حد كبير اللعب من خلال الكؤوس قواعد وإلا لا فائدة من استخدامه.واحدة من تلك القواعد في هذا المجال الكائنات رائع فئات بشدة "المحسن" من قبل الكؤوس وقت التشغيل.

قد يكون من الممكن أن يكون لهم توسيع القائمة فئات Java, ولكن أنا لا أراهن على ذلك - و جميع الربيع السبات أجزاء من القائمة التطبيق يجب أن يكون التخلص منها أو على الأقل عليك أن تنفق الكثير من الجهد لجعلها تعمل في الكؤوس.سوف يكون القتال إطار بدلا من الاستفادة من ذلك.

المنظمة البحرية الدولية لديك خياران:

  • إعادة كتابة التطبيق الخاص بك من الصفر في الكؤوس حين إعادة استخدام أكبر قدر من التعليمات البرمجية الموجودة ممكن.
  • الاحتفاظ التطبيق الخاص بك كما هو و إضافة أشياء جديدة في رائع ، دون استخدام الكؤوس.

هذا الأخير هو الأفضل في الوضع الخاص بك.الكؤوس يهدف إلى إنشاء تطبيقات ويب جديدة بسرعة كبيرة, حيث انه يضيء.إضافة الأشياء إلى القائمة التطبيق ليس فقط ما كانت مصنوعة.

تحرير: بشأن توضيح في التعليقات:إذا كنت تخطط لكتابة أساسا مدخل بيانات/صيانة الواجهة البيانات المستخدمة من قبل تطبيق آخر و قد DB فقط قناة اتصال بينهما ، التي قد تعمل بشكل جيد جدا مع الكؤوس;فإنه يمكن بالتأكيد تكوينه لاستخدام القائمة DB schema بدلا من خلق الخاصة بها من المجال الطبقات (على الرغم من أن هذا الأخير هو عمل أقل).

نصائح أخرى

يعرف جيدا كيف رائع و الكؤوس excel في دمج مع القائمة كود جافا, أعتقد أنني قد يكون قليلا أكثر تفاؤلا من مايكل حول الخيارات الخاصة بك.

أول شيء هو أن كنت بالفعل باستخدام الربيع السبات ، و منذ المجال الخاص بك فئات هي بالفعل POJOs ينبغي أن يكون من السهل على الاندماج مع.أي ربيع الفاصوليا قد يمكن أن تكون محددة في ملف XML كالعادة (في grails-app/conf/spring/resources.xml) أو أكثر ببساطة باستخدام الربيع فول باني ميزة من الكؤوس.ثم يمكن أن يكون الوصول إليها بالاسم في أي تحكم, عرض, خدمة, الخ.وعملت مع كالمعتاد.

هنا هي الخيارات كما أراها ، لدمج المجال الخاص بك فصول مخطط قاعدة البيانات:

  • تجاوز GORM و تحميل/حفظ كائنات المجال تماما كما كنت تفعل الفعل.

    الكؤوس لا يجبرك على استخدام GORM ، لذلك يجب أن تكون واضحة تماما:إنشاء .jar من شفرة جافا (إذا كنت لم تقم بذلك بالفعل) وأسقطه في الكؤوس التطبيق lib الدليل.إذا كان جافا المشروع Mavenized, انها أسهل:الكؤوس 1.1 يعمل مع مخضرم ، لذلك يمكنك إنشاء pom.xml الخاص بك الكؤوس التطبيق و إضافة جافا المشروع تبعية كما في أي دولة أخرى (جافا) المشروع.

    وفي كلتا الحالتين عليك أن تكون قادرا على import الفصول الدراسية (أي دعم الطبقات) و المضي قدما على النحو المعتاد.لأن من رائع ضيق التكامل مع جافا, سوف تكون قادرة على خلق الأجسام ، تحميلها من قاعدة البيانات وتعديلها وحفظها واعتمادها الخ.بالضبط كما لو كنت في الخاص بك جافا المشروع.أنك لن تحصل على جميع وسائل الراحة GORM بهذه الطريقة, ولكن سيكون لديك ميزة العمل مع الأشياء الخاصة بك في الطريقة التي بالفعل يجعل الشعور لك (باستثناء ربما أقل قليلا رمز بفضل رائع).يمكنك دائما محاولة هذا الخيار أولا إلى الحصول على شيء من العمل ، ثم النظر في واحدة من خيارات أخرى في وقت لاحق إذا كان يبدو منطقيا في ذلك الوقت.

    تلميح إذا كنت لا تحاول هذا الخيار:مجردة الفعلية رمز المثابرة في الكؤوس خدمة (StorageService ربما) لم تحكم أساليب الدعوة على أنه بدلا من التعامل مع استمرار مباشرة.هذه الطريقة التي يمكن أن تحل محل تلك الخدمة مع شيء آخر على الطريق إذا لزم الأمر, و طالما أنك تحافظ على نفس واجهة وحدات التحكم الخاصة بك لن تتأثر.

  • إنشاء جديد الكؤوس المجال فئات فرعية من القائمة فئات Java.

    وهذا يمكن أن تكون واضحة جدا إذا كان لديك فصول بالفعل كما هو مكتوب السليم الفاصوليا ، أيمع جالبة/أساليب اضع جميع ممتلكاتهم.الكؤوس سوف نرى ورثت هذه الخصائص كما لو كانت مكتوبة في أبسط أسلوب رائع.عليك أن تكون قادرا على تحديد كيفية التحقق من صحة كل مكان الإقامة ، وذلك باستخدام إما بسيطة التحقق من صحة الشيكات (not null, لا فارغة, الخ.) أو مع الإغلاق أن تفعل أشياء أكثر تعقيدا ، وربما استدعاء الأساليب القائمة في POJO superclasses.

    كنت يكاد يكون من المؤكد سوف تحتاج إلى قرص تعيينات عبر GORM الخرائط DSL لتناسب واقع الخاصة بك الموجودة في مخطط قاعدة البيانات.العلاقات سيكون أين يمكن الحصول على صعبة.على سبيل المثال, قد يكون لديك بعض الحلول الأخرى حيث GORM يتوقع الانضمام إلى الجدول ، على الرغم من قد يكون هناك حتى وسيلة للتغلب على الخلافات مثل هذه.أقترح أن تعلم قدر ما تستطيع عن GORM و رسم الخرائط DSL ثم التجربة مع عدد قليل من الفئات الخاصة بك لمعرفة ما إذا كان هذا خيارا قابلا للتطبيق.

  • وقد الكؤوس استخدام القائمة الخاصة بك POJOs و السبات تعيينات مباشرة.

    لقد جربت هذا بنفسي ولكن وفقا الكؤوس هو السبات التكامل الصفحة هذا هو المفترض أن يكون من الممكن:"الكؤوس أيضا يسمح لك لكتابة المجال الخاص بك نموذج في جافا أو إعادة استخدام القائمة نموذج المجال التي تم تعيينها باستخدام السبات.كل ما عليك فعله هو وضع ما يلزم 'hibernate.cfg.xml ملف المقابلة تعيينات الملفات في '%PROJECT_HOME%/الكؤوس التطبيق/conf/السبات' الدليل.سوف لا يزال تكون قادرا على استدعاء كل من الديناميكية المستمرة طرق الاستعلام يسمح في GORM!"

    غوغلينغ "gorm إرث" ظهر عدد من مناقشات مفيدة و الأمثلة على سبيل المثال هذا بلوق وظيفة قبل غلين سميث (المؤلف المشارك قريبا-إلى أن صدر الكؤوس في العمل) حيث كان يظهر السبات ملف تعيين تستخدم لدمج مع "تراث DB من الجحيم". الكؤوس في العمل وقد فصل بعنوان "المتقدمة GORM الكونغفو" الذي يعد مفصلا مناقشة هذا الموضوع.يجب قبل إصدار PDF من الكتاب, و بينما أنا لم نصل إلى هذا الفصل بعد ما قرأت حتى الآن جيدة جدا ، و يغطي الكتاب العديد من المواضيع التي لا تناقش بشكل كاف في الكؤوس الكتب.

آسف أنا لا يمكن أن تقدم أي تجربة شخصية في هذا الخيار الأخير ، ولكن يبدو قابلة للتنفيذ (و واعدة جدا).أيهما تختار الخيار, اسمحوا لنا أن نعرف كيف تبين!

هذه الوظيفة توفر بعض الاقتراحات باستخدام الكؤوس على التفاف القائمة فئات Java في إطار الشبكة.

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