taglibs مقابل javaclass: أو كيفية الجمع بين كليهما بأفضل طريقة

StackOverflow https://stackoverflow.com/questions/1188300

  •  19-09-2019
  •  | 
  •  

سؤال

أنا أكتب حاليا قالب لأبينز، وجافا مقرها CMS مع دعم جيد جدا Taglib و API قوي.

على أي حال، عندما أنظر إلى البرامج التعليمية أو المصدر، يتم استخدام حوالي 50-50 أن Taglibs أو Javaclasses تستخدم لتوليد (HTML) - Putput.

أحاول الحفاظ على نظيفة JSPS الخاصة بي، مما يعني عدم وجود الكثير من رمز سكرات (بدلا من ذلك باستخدام JSTL وما إلى ذلك). في مرحلة ما، يمكن أن أحتاج إلى مزيد من السيطرة على التعليمات البرمجية، وهذه هي أن فصول جافا تأتي وهنا لا أعرف إلى أي مدى يجب أن أذهب (أنا شخصي لا أحب فكرة توليد HTML في الفصل).

فيما يلي بعض إيجابيات وسلبيات لدي من:

  1. مع Taglibs، ليس لدي لإعادة تشغيل حاوية Servlet في كل مرة. أنا فقط اجعل التغييرات وأرى النتيجة
  2. A Taglib JSP من الأسهل الحفاظ عليها، خاصة بالنسبة ل WebDesigner بسبب بناء الجملة "نفسه"
  3. يوفر Javaclass دعم IDE كامل / أكثر (نوع / تحقق بناء الجملة)
  4. مع متطلبات أكثر تعقيدا، يتميز كود Javaclass (مقارنة بوضع المتغيرات إلى Pagecontext في JSP)
  5. إضافة EL (لغة التعبير) المزيد من الطاقة إلى JSP / Taglib ولكن هذا بناء جملة آخر مرة أخرى ويجب تعلمه

هل هناك أفضل ممارسات حول كيفية الاقتراب من ذلك؟نظرا لوجودت هذه الجمارات الأخرى، من المحتمل أن تضطر إلى الحفاظ على هذا في المستقبل، وأنا أبحث عن حل نظيف / ميثان - هل تعرف كل ما تعرف الوضع عندما نظرت إلى رمز بعض الشيء وعلى الرغم من "ما هو الجحيم كان يفكر هو / سيه" ؛)

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

المحلول

لقد احتفظت بهذا بسيط جدا في الماضي.

استخدم Taglibs عندما يكون الغرض هو عرض تقديمي. قل أن لديك كتلة من رمز العرض الذي ستعود بإعادة استخدامه في مجموعة من الصفحات، في حالة Stackoverflow، دعنا نقول رمز السهم. نظرا لأن ذلك يجب أن يعرض البيانات فقط، فلا ينبغي أن تحتاج إلى رمز Java، وأستعبه Taglib.

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

لا تستخدم إما للوصول إلى قواعد البيانات.

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