Frage

Benutzen JDeveloper, Ich begann bei der Arbeit mit der Entwicklung einer Reihe von Webseiten für ein Projekt.Da ich damals nicht viel über JDev wusste, bin ich zu Oracle gelaufen, um ein paar Tutorials zu verfolgen.Die JDev-Tutorials empfehlen dies JSPX anstatt JSP, habe aber nicht wirklich erklärt, warum.Entwickeln Sie JSPX-Seiten?Warum haben Sie sich dazu entschieden?Was sind die Vor- und Nachteile der JSPX-Route?

War es hilfreich?

Lösung

Der Hauptunterschied besteht darin, dass die Arbeit mit einer JSPX-Datei (offiziell als „JSP-Dokument“ bezeichnet) möglicherweise einfacher ist, da die Anforderung an wohlgeformtes XML es Ihrem Editor möglicherweise ermöglicht, während der Eingabe mehr Tipp- und Syntaxfehler zu erkennen.

Allerdings gibt es auch Nachteile.Beispielsweise muss wohlgeformtes XML Dinge wie Kleiner-als-Zeichen entkommen, sodass Ihre Datei möglicherweise Inhalte wie den folgenden enthält:

<script type="text/javascript">
   if (number &lt; 0) {

Die XML-Syntax kann auch ausführlicher sein.

Andere Tipps

JSPX hat ein paar Unannehmlichkeiten, die mir einfallen:

  1. Es ist schwierig, dynamische Inhalte zu generieren.insb.Generieren eines HTML-Tags mit optionalen Attributen (z. B.oder abhängig von einer Bedingung).Die Standard-JSP-Tags, die dieses Problem lösen sollten, funktionierten nicht richtig, als ich mit JSPX begann.
  2. Nicht mehr & nbsp;:-P
  3. Sie möchten wirklich Ihr gesamtes Javascript in separaten Dateien ablegen (oder CDATA-Abschnitte usw. verwenden).Meiner Meinung nach sollten Sie auf jeden Fall jQuery verwenden, sodass Sie Onclick usw. wirklich nicht benötigen.Attribute...
  4. Werkzeuge funktionieren möglicherweise nicht richtig;Möglicherweise unterstützt Ihre IDE nichts über einfaches JSP hinaus.
  5. Unter Tomcat 6.x, zumindest in den Versionen/Konfigurationen, die ich ausprobiert habe, weist die generierte Ausgabe keine Formatierung auf;Allerdings nur ein kleines Ärgernis

Andererseits:

  1. Es zwingt Sie dazu, korrektes XML zu schreiben, das einfacher manipuliert werden kann als JSP
  2. Tools führen möglicherweise eine sofortige Validierung durch und erkennen Fehler früher
  3. Meiner bescheidenen Meinung nach ist die Syntax einfacher

Eine völlig andere Argumentation, warum Sie jspx anstelle von jsp verwenden sollten:

JSPX und EL machen das Einbinden von Javascript und eingebetteten Java-Codes viel schwieriger und weniger natürlich als JSP.EL ist eine Sprache, die speziell auf die Präsentationslogik zugeschnitten ist.

All dies führt Sie zu einer saubereren Trennung von UI-Rendering und anderer Logik.Der Nachteil eines viel eingebetteten Codes auf einer JSP (x) -Seite ist, dass es praktisch unmöglich ist, leicht zu testen, während das Üben dieser Trennung von Bedenken den größten Teil Ihrer Logik vollständig einheitstestbar macht.

Hallo JDeveloper-Entwickler!

Ich arbeite seit über zwei Jahren mit JSPX-Seiten und hatte nie Probleme damit, dass sie JSPX im Gegensatz zu JSP sind.Die Entscheidung für JSPX war für mich etwas erzwungen, da ich JHeadstart verwende, um ADF Faces-Seiten automatisch zu generieren, und JHeadstart standardmäßig alles in JSPX generiert.

JSPX gibt an, dass das Dokument ein wohlgeformtes XML-Dokument sein muss.Dies ermöglicht eine ordnungsgemäße und effiziente Analyse.Ich habe von Entwicklern gehört, dass dies dazu beiträgt, dass Ihre Seiten im Vergleich zu JSP „zukunftssicherer“ werden.

Wie in der offiziellen Dokumentation von Spring 3.1 angegeben

"Frühling bietet ein paar außerhalb der Box-Lösungen für JSP- und JSTL-Ansichten."

Sie müssen auch bedenken, dass JSPX darauf abzielt, eine reine XML-kompatible Ausgabe zu erzeugen.Wenn Ihr Ziel also HTML5 ist (das XML-kompatibel sein kann, aber die Komplexität erhöht, siehe meine nächsten Kommentare), haben Sie einige Schwierigkeiten, Ihr Ziel zu erreichen, wenn Sie Eclipse IDE verwenden ...Wenn Ihr Ziel darin besteht, XHTML zu produzieren, dann entscheiden Sie sich für JSPX und JDeveloper wird Sie unterstützen ...

In einem unserer cie-Projekte haben wir einen POC sowohl mit JSP als auch mit JSPX erstellt und Vor- und Nachteile ermittelt. Meine persönliche Empfehlung war die Verwendung von JSP, da wir es als viel weniger restriktiv und natürlich empfanden, HTML5 auf eine nicht-XML-artige Weise zu erstellen, die auch weniger restriktiv ist und kompaktere Syntax.Wir ziehen es vor, etwas weniger Restriktives zu wählen und „Best Practices“-Empfehlungen wie „Fügen Sie keine Java-Skriptlets in JSP-Dateien ein“ hinzuzufügen.(Übrigens können Sie mit JSPX auch Scriplets mit jsp:scriplet anstelle von <% ... einfügen.%>)

@Matthew-
ADF!Die Anwendung, an der ich gerade arbeite, hat 90 % der Präsentationsschicht, die von Mod PL/SQL generiert wird.Ich begann mit der Arbeit an ein paar neuen Bildschirmen und wollte andere Optionen untersuchen, die in unsere Architektur passen könnten, ohne für andere Entwickler eine zu große Lernlast zu sein (die Komplexität des Systems zu erhöhen/die mentalen Modelle des Entwicklers zum Absturz zu bringen). Team.Über ADF bin ich also auch auf JSPX gestoßen.

Ich habe auch eine „zukunftssichere“ Beobachtung gesehen ... wusste aber nicht, wie fundiert diese war.

JSPX ist auch die empfohlene Ansichtstechnologie in Spring MVC/Spring Web Flow.

Ein weiteres Problem, das ich bei JSPX festgestellt habe, ist die Verwendung von Scriptlets.Ich stimme zu, dass sauberer Code im Allgemeinen gut und die Java-Logik in der JSP im Allgemeinen schlecht ist, aber es gibt bestimmte Fälle, in denen Sie eine Dienstprogrammfunktion verwenden möchten, um einen Zeichenfolgenwert zurückzugeben, oder etwas, bei dem eine TagLib oder das Modell (Anforderungsattribute) übertrieben wäre .

Was denken alle über Scriptlets in JSP?

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