سؤال

بناءً على الإجابة المقبولة على هذا السؤال لقد قمت بإعداد بيئة NetBeans/tomcat.في اختبار هذا الإعداد، أحاول إنشاء تطبيق Java Web/Web، ولكني أشعر بالحيرة بسبب اختيار أطر العمل لتطبيق الاختبار هذا.

الاختيارات هي:

  • ربيع ويب MVC 2.5
  • وجوه جافا سيرفر
  • الدعامات 1.3.8
  • السبات 3.2.5

في قراءتي (googling & SO) وسرعان ما ضاعت في الغابة، لذلك أفكر في اختيار واحدة فقط وإذا لم تنجح، للتبديل/الانتقال لاحقًا إلى واحدة مختلفة.هل سيكون مثل هذا النهج ممكنا؟


خلفية عن المشروع

(يجب أن يكون مستندًا إلى Java بسبب التعليمات البرمجية القديمة)
ويستخدم برنامجًا صغيرًا موقّعًا ذاتيًا لإجراء العرض والتفاعل من جانب العميل؛
تقوم Servlets باسترداد مجموعات البيانات المطلوبة من العميل؛
قد تكون قاعدة البيانات موجودة على خادم بعيد، لذلك أنوي استخدام JDBC للوصول إليها؛

كان النظام القديم هو CORBA (ACE/TAO) الذي يعتمد على الكثير من وحدات C++ النمطية التي تحتاج إلى ترجمتها إلى Java، ووحدات Java الحالية (القليلة لحسن الحظ) التي تجري استدعاءات CORBA بحاجة إلى التغيير لاستخدام Java المترجمة حديثًا. وحدات.

إذا كان بإمكانك التوصل إلى نهج أفضل للتعامل مع هذا المشروع، من فضلك قل لي.

(يحتوي هذا المشروع على كل السمات المميزة لما أحبه:إنه أمر مثير للاهتمام، وصعب، وأتعلم شيئًا جديدًا)

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

المحلول

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

أنا شخصياً لا أحب JSF (وحش المواصفات الآخر الذي يستغرق وقتًا أطول للوصول إليه مما يحتاج إليه).إذا كنت تفضل النهج القائم على عناصر واجهة المستخدم (وضع صفحتك مع المكونات بدلاً من إخراج HTML القديم العادي) فقد ترغب في إلقاء نظرة على مجموعة أدوات الويب من جوجل.

حل الربيع الآخر هو جريلز.إنه أمر ممتع حقًا في الاستخدام، وحتى إذا كان عليك تعلم لغة (برمجة نصية) أخرى (تسمى Groovy)، فلا يزال بإمكانك استخدام كل فئات Java القديمة في Framework لأن فئات Groovy متوافقة مع فئات Java (والعكس صحيح).

وبالمناسبة.أعتقد أن CORBA عبارة عن تقنية/بروتوكول/معيار يسمح لك بشكل خاص بالوصول إلى الأساليب والكائنات بشكل مستقل عن اللغة.ويكيبيديا:

The Common Object Request Broker Architecture (CORBA) is a standard defined by the Object Management Group (OMG) that enables software components written in multiple computer languages and running on multiple computers to work together, i.e. it supports multiple platforms.

فلماذا يتعين عليك ترجمة وحدات C++ للتحدث إلى Java؟

نصائح أخرى

أولاً، قم بشطب السبات من قائمتك - بينما يُنصح باستخدامه إذا كان لديك متطلبات ORM فهو غير مرتبط بطبقة الويب.

ثم أعتقد أن لديك خيارين:

  • الربيع MVC وJSF
  • الدعامات

سيؤدي التوجه إلى أي من الطريقين إلى إلزامك بواجهات برمجة التطبيقات/واجهات برمجة التطبيقات هذه ولن يكون التبديل في وقت لاحق سهلاً على الإطلاق.

نصيحتي ستكون:

  • استخدم Spring MVC - من المحتمل أن تستخدم Spring على أي حال، لذا فهو خيار طبيعي.
  • تجاهل JSF، واكتب HTML بنفسك، باستخدام JSTL لعرض الفول.
  • استخدم JQuery/JavaScript لإثراء تجربة المستخدم.
  • استخدم السبات لاستمرار الكائن.

أعتقد أنها فكرة جيدة أن نلتقط الحد الأدنى ونضيفه حسب الحاجة.من المحتمل أنك تكتسب البساطة بهذه الطريقة.

قد تكون الفكرة هي البدء بـ Spring باعتباره "المخطط الكبير للأشياء" وتقنية التكامل.ثم قم بإضافة المكملات حسب الحاجة:

  • إصرار :بيات شتوى
  • جافا سكريبت :اختر مكتبة js تتوافق بشكل جيد مع وحدة Spring MVC التي تستخدمها
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top