Was ist der grundlegende Unterschied zwischen einem jsp taglib einer jsp Seite vs einschließlich?

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

  •  02-07-2019
  •  | 
  •  

Frage

Ich habe einige gemeinsame Elemente (Komponenten), die einige HTML generieren. es scheint, meine Optionen ein taglib erstellen, oder einfach nur, dass die Logik in eine jsp Seite setzen und die jsp einschließlich.

Was ist der Unterschied? Positive vs Negative?

War es hilfreich?

Lösung

Wenn Sie einen taglib der Behälter typisch:

  • Schreibt und ruft eine Hilfsmethode aus _jspService
  • Im Inneren des Hilfsmethode ist eine Instanz der Klasse-Tag erstellt und Standardmethoden (setParent (), doStartTag (), doEndTag () etc ...)
  • genannt

Dies hält die gesamten Code innerhalb derselben Ressource (nicht die Anforderung nicht an einem anderen Komponente übergeben bekommen), und somit können Sie in Schleifenverhalten und Zugang zu anderen Komponenten auf der aktuellen Seite bauen.

Es gibt Overhead-Tag-Bibliotheken in dem Lernen. Aber sobald Sie Ihren ersten Tag bekommen haben Arbeit seine bergab. Auch das Endergebnis wird einfacher für Nicht-Entwickler zu verstehen (vorausgesetzt, Sie gute Namen für die Tags wählen).

Andere Tipps

Taglibs können Sie (typisiert) Parameter definieren, die Sie dokumentieren. Taglibs kann auch im Objektbaum über ihre Lage sein, so unterschiedlich in einem anderen Kontext zu handeln; oder rufen Sie eine bestimmte Vorlage immer und immer wieder Iteratoren oder Anweisung Konstrukte zu erstellen.

Sind Sie sich bewusst, dass Taglibs nicht unbedingt in Java geschrieben werden? Es gibt auch ein Konzept Tagfiles genannt, die Sie Ihre taglib in JSP schreiben können; oft besser geeignet für flache compononents ... ganz in der Nähe enthält.

Tags unterstützen Aufruf mit stark typisierte, benannte Parameter (die die leicht zu bedienende JSP-like Tagdatei Mechanismus enthalten).

Ein weiteres unglaublich nützlich und überraschend oft übersehen Merkmal von JSP-Tags ist das die JspFragment Attributtyp. Auf diese Weise können Sie ein Stück von JSP-Code zu übergeben, als Parameter in einem Tag aufgerufen werden, vielleicht wiederholt.

Enthält fehlen diese leistungsstarke Parametrierung Funktionen.

Taglibs machen es leichter zu definieren und Parameter handhaben, aber es gibt einen erheblichen Aufwand, sie zu entwickeln. Inklusive sind einfacher, aber weniger leistungsfähig. Viel hängt von Ihrem Stil.

Nach meiner Erfahrung, Menschen in der Regel nur verwenden enthält, weil sie nicht wollen, die Zeit nehmen, zu lernen tablibs zu erstellen. Was zu einem fairen Chaos. Solange Ihr Team klein und Sie nicht zu komplex enthalten, ist es nicht so schlimm. Aber es ist ein Code Geruch.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top