سؤال

هل يمكن لأي شخص أن يشرح الفكرة وراء مكتبات العلامات المخصصة JSP وملفات العلامات JSP 2؟

هل هم مجرد طرق مختلفة لفعل الشيء نفسه؟

كيف يقارنون؟ ما هي إيجابياتهم وسلبياتهم ، وأيها أفضل؟

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

المحلول

أنا <3 ملفات علامة ، لكن مطور JSTL الرئيسي هذا هو تدخين الكراك إذا قالوا ذلك حقًا. لا يمكنك إعادة كتابة جميع علامات مكتبة العلامات كعلامات ملف العلامة ، لسبب واحد مهم للغاية: لا يمكن أن تفعل ملفات العلامات:

إرجاع eval_body_include ؛

بمعنى آخر ، تحتوي ملفات العلامات على ثلاثة خيارات فقط لمحتوى جسمهم:

فارغة: لا محتوى داخلي ، أي.u003CsomeTag/>

النصي: لا محتوى JSP الداخلي ، أي.u003CsomeTag>u003Cp style=";text-align:right;direction:rtl"> مرحبا بالعالمu003C/p>u003C/someTag> على ما يرام ، ولكن ليسu003CsomeTag>u003Cp style=";text-align:right;direction:rtl"> <٪ = helloworld.tostring () ٪>u003C/p>u003C/someTag>

tagDependent: يمكنك الحصول على محتوى JSP الداخلي ، ولكن لن تتم معالجته على هذا النحو ؛ بدلاً من ذلك عليك تحليل/تقديمها كما ترى مناسبة

ولكن مع علامات مكتبة العلامات القديمة ، يمكنك الحصول على:u003Cbody-content> JSPu003C/body-content> (في ملف TLD) ثم "إرجاع eval_body_include ؛" من "Dostarttag". إذا قمت بذلك ، فسيتم تحليل جميع توجيهات JSP الخاصة بك تمامًا كما لو كانت جزءًا عاديًا من صفحتك ، وتلتف علامتك ببساطة بالمحتوى المناسب.

شخصيا ، قاعدة الإبهام هي: استخدم ملفات العلامات كلما استطعت ، أي. كلما كنت لا تحتاج إلى توجيهات JSP للعمل داخل العلامة ، لأنها أنظف بقيمة مليون مرة ، وأسهل لغير البرامج للعمل معها ، لا تتطلب TLD (حسنًا ، إذا احتفظت بها في مساحة اسم منفصلة من علامات مكتبة العلامات الخاصة بك).

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

نصائح أخرى

مشاكل في تطوير علامات مخصصة

تتطلب العلامات المخصصة التقليدية مهارات البرمجة Java.

كل ما عدا أبسط العلامات المخصصة ليس من السهل الكتابة.

الغرض من JSP ، على عكس Servlets ، هو استخدام لغة الترميز لإدارة التخطيط مع المحتوى الديناميكي المدمج.

الاضطرار إلى كتابة رمز Java المعقد في العلامات المخصصة التي تركز على لغة الترميز تتراجع.

قد نرغب في استخدام لغة تعبير JSP أو علامات مخصصة أخرى عند تنفيذ علامة مخصصة جديدة.

الحل ملفات علامة JSP 2.0

  • تعد ملفات العلامات واحدة من المفاهيم الجديدة المهمة التي تم تقديمها مع JSP 2.0.
  • تسمح ملفات العلامات بتطوير أسهل وأكثر سرعة للعلامات المخصصة.
  • تم تطوير ملفات العلامات باستخدام بناء جملة JSP العادي ، بما في ذلك عناصر البرمجة النصية ، وتستخدم تمامًا مثل أي علامة مخصصة أخرى.
  • كل علامة مخصصة هي ملف علامة منفصل.

كيف تختلف ملفات العلامات؟

مكتوب باستخدام بناء جملة JSP.

  • لا يُسمح بجميع توجيهات JSP في ملف علامة.
  • بدعم من توجيهات ملفات جديدة محددة ، والأفعال والكائنات الضمنية.

تم تحديده بواسطة أ .بطاقة شعار أو .tagx لاحقة.

تهدف إلى توفير مطوري العلامات المخصصة سهولة التطوير دون فقدان الوظائف.

  • علق أحد المطورين الرئيسيين في JSTL أن لديها الوقت ، وستعيد كتابة جميع JSTL باستخدام ملفات العلامات.
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top