JSP ist eine Java-View-Technologie, die auf dem Server ausgeführt wird und es Ihnen ermöglicht, Vorlagentext in clientseitigen Sprachen (wie HTML, CSS, JavaScript usw.) zu schreiben. JSP unterstützt Taglibs , die von Java-Code unterstützt werden , mit denen Sie den Seitenfluss steuern oder dynamisch ausgeben können. Eine bekannte Taglib ist JSTL . JSP unterstützt auch die Ausdruckssprache , mit der auf Backend-Daten zugegriffen werden kann (über Attribute, die auf den Seiten-, Anforderungs-, Sitzungs- und Anwendungsbereichen verfügbar sind), hauptsächlich in Kombination mit Taglibs.
Wenn eine JSP zum ersten Mal angefordert wird oder wenn die Webanwendung gestartet wird, kompiliert der Servlet-Container sie in eine Klasse, HttpServletdie sie erweitert und während der Lebensdauer der Webanwendung verwendet. Sie finden den generierten Quellcode im Arbeitsverzeichnis des Servers. In Tomcat ist es beispielsweise das /workVerzeichnis. Bei einer JSP-Anforderung führt der Servlet-Container die kompilierte JSP-Klasse aus und sendet die generierte Ausgabe (normalerweise nur HTML / CSS / JS) über den Webserver über ein Netzwerk an die Clientseite, die sie wiederum im Webbrowser anzeigt.
Servlet ist eine Java Application Programming Interface (API), die auf dem Server ausgeführt wird. Sie fängt vom Client gestellte Anforderungen ab und generiert / sendet eine Antwort. Ein bekanntes Beispiel ist das HttpServlet, das Methoden zum Verknüpfen von HTTP- Anforderungen mit den gängigen HTTP-Methoden wie GETund bereitstellt POST. Sie können HttpServlets so konfigurieren , dass ein bestimmtes HTTP-URL-Muster, das in web.xmloder in jüngerer Zeit mit Java EE 6 konfiguriert werden kann , mit @WebServletAnmerkungen abgehört wird.
Wenn ein Servlet zum ersten Mal oder während des Starts der Web-App angefordert wird, erstellt der Servlet-Container eine Instanz davon und speichert sie während der Lebensdauer der Web-App im Speicher. Dieselbe Instanz wird für jede eingehende Anforderung wiederverwendet, deren URL mit dem URL-Muster des Servlets übereinstimmt. Sie können auf die Anforderungsdaten von zugreifen HttpServletRequestund die Antwort von verarbeiten HttpServletResponse. Beide Objekte sind als Methodenargumente in einer der überschriebenen Methoden von verfügbar HttpServlet, z. B. doGet()und doPost().
JSF ist ein komponentenbasiertes MVC-Framework , das auf der Servlet-API basiert und Komponenten über Taglibs bereitstellt , die in JSP oder einer anderen Java-basierten Ansichtstechnologie wie Facelets verwendet werden können . Facelets eignet sich viel besser für JSF als für JSP. Es bietet nämlich hervorragende Vorlagenfunktionen wie zusammengesetzte Komponenten , während JSP im Grunde nur die <jsp:include>Vorlagen für JSF-Vorlagen bietet , sodass Sie gezwungen sind, benutzerdefinierte Komponenten mit rohem Java-Code zu erstellen (was etwas undurchsichtig und mit viel mühsamer Arbeit verbunden ist), wenn Sie möchten eine wiederholte Gruppe von Komponenten durch eine einzelne Komponente ersetzen. Seit JSF 2.0 ist JSP als View-Technologie zugunsten von Facelets veraltet.
Hinweis : JSP selbst ist NICHT veraltet, nur die Kombination von JSF mit JSP ist veraltet.
Hinweis : JSP verfügt mithilfe von Taglibs über hervorragende Vorlagenfunktionen, insbesondere die Variante ( Tag File ). Es fehlt an JSP-Vorlagen in Kombination mit JSF.
Als MVC - Framework ( Model-View-Controller ) bietet JSF FacesServletden einzigen Request-Response- Controller . Sie müssen alle üblichen und langwierigen HTTP-Anforderungs- / Antwortarbeiten erledigen, z. B. Benutzereingaben sammeln, validieren / konvertieren, in Modellobjekte einfügen, Aktionen aufrufen und die Antwort rendern. Auf diese Weise erhalten Sie im Grunde eine JSP- oder Facelets-Seite (XHTML) für View und eine JavaBean-Klasse als Modell . Die JSF-Komponenten werden verwendet, um die Ansicht mit dem Modell zu verbinden (wie dies bei Ihrem ASP.NET-Websteuerelement der Fall ist), und FacesServletdie JSF-Komponentenstruktur verwendet die gesamte Arbeit.
Ja. <mytag:doesSomething/>sieht aus wie ein benutzerdefiniertes Tag und <jsp:attribute>ein JSP-Tag.
Shashank Kadne
3
Da dies eine äußerst beliebte Antwort ist, möchte ich ein sehr wichtiges Bit hinzufügen, nämlich JSP-Tag-Dateien, mit denen benutzerdefinierte Tags für die Seitenzusammensetzung und das Seitenlayout erstellt werden können, ohne Java-Code zu schreiben. Diese Funktion ist äußerst nützlich und seit vielen Jahren Teil des Standards, wird jedoch weiterhin nicht ausreichend genutzt.
Jiggy
1
@johnny Facelets ist seit der Veröffentlichung von Java EE 6 im Jahr 2009 die bevorzugte Ansichtstechnologie ( docs.oracle.com/javaee/6/tutorial/doc/giepx.html ). Das Mindestmaß an Technologien zur Entwicklung von Java-Webanwendungen ist nicht höher als in den meisten anderen Sprachen, aber es gibt viel mehr Optionen und Konkurrenten, was für Neulinge verwirrend ist. Webentwicklung in Ruby? Die erste Wahl liegt auf der Hand.
DavidS
1
@BalusC +1 für eine detaillierte Erklärung. Meine Lieblingsantwort.
Die JSP-Technologie ist Teil der Java-Technologiefamilie. JSP-Seiten werden zu Servlets kompiliert und können JavaBeans-Komponenten (Beans) oder Enterprise JavaBeans-Komponenten (Enterprise Beans) aufrufen, um die Verarbeitung auf dem Server durchzuführen. Daher ist die JSP-Technologie eine Schlüsselkomponente in einer hoch skalierbaren Architektur für webbasierte Anwendungen.
A: Die JavaServer Faces-Technologie ist ein Framework zum Erstellen von Benutzeroberflächen für Webanwendungen. Die JavaServer Faces-Technologie umfasst:
Eine Reihe von APIs für: Darstellen von UI-Komponenten und Verwalten ihres Status, Behandeln von Ereignissen und Eingabevalidierung, Definieren der Seitennavigation sowie Unterstützen der Internationalisierung und Zugänglichkeit.
Eine benutzerdefinierte Tag-Bibliothek für JavaServer Pages (JSP) zum Ausdrücken einer JavaServer Faces-Schnittstelle innerhalb einer JSP-Seite.
JSP ist eine spezielle Art von Servlet.
JSF ist eine Reihe von Tags, die Sie mit JSP verwenden können.
"JSP ist eine spezielle Art von Servlet. JSF ist eine Reihe von Tags, die Sie mit JSP verwenden können." Diese Aussage beschreibt am besten die Beziehung zwischen den drei!
Kostenlos
34
Aus Browser- / Client-Perspektive
JSP und JSF sehen beide gleich aus. Gemäß den Anwendungsanforderungen eignet sich JSP besser für Anwendungen, die auf Anforderungen und Antworten basieren.
JSF ist auf umfangreichere ereignisbasierte Webanwendungen ausgerichtet. Ich sehe das Ereignis als viel detaillierter als die Anfrage / Antwort.
Aus Serverperspektive
Die JSP-Seite wird in ein Servlet konvertiert und weist nur ein minimales Verhalten auf.
Die JSF-Seite wird (von einem speziellen FacesServlet) in einen Komponentenbaum konvertiert und folgt dem durch die Spezifikation definierten Komponentenlebenszyklus.
Mit der Java-Servlet-API können Java-Entwickler serverseitigen Code für die Bereitstellung dynamischer Webinhalte schreiben. Wie andere proprietäre Webserver-APIs bot die Java-Servlet-API eine verbesserte Leistung gegenüber CGI. Es hat jedoch einige wichtige zusätzliche Vorteile. Da Servlets in Java codiert wurden, bieten sie einen objektorientierten Entwurfsansatz (OO) und können, was noch wichtiger ist, auf jeder Plattform ausgeführt werden. Daher war derselbe Code auf jeden Host portierbar, der Java unterstützte. Servlets trugen wesentlich zur Popularität von Java bei, da es zu einer weit verbreiteten Technologie für die serverseitige Entwicklung von Webanwendungen wurde.
JSP:
JSP basiert auf Servlets und bietet eine einfachere, seitenbasierte Lösung zum Generieren großer Mengen dynamischer HTML-Inhalte für Webbenutzeroberflächen. Mit JavaServer Pages können Webentwickler und Designer HTML-Seiten mit speziellen Tags für die dynamischen Java-Teile einfach bearbeiten. JavaServer Pages verfügt über ein spezielles Servlet, das als JSP-Container bezeichnet wird und auf einem Webserver installiert ist und alle JSP-Seitenaufrufanforderungen verarbeitet. Der JSP-Container übersetzt eine angeforderte JSP in Servlet-Code, der dann kompiliert und sofort ausgeführt wird. Nachfolgende Anforderungen an dieselbe Seite rufen einfach das Laufzeitservlet für die Seite auf. Wenn eine Änderung an der JSP auf dem Server vorgenommen wird, löst eine Anforderung zum Anzeigen eine weitere Übersetzung, Kompilierung und einen Neustart des Laufzeitservlets aus.
JSF:
JavaServer Faces ist ein Standard-Java-Framework zum Erstellen von Benutzeroberflächen für Webanwendungen. Am wichtigsten ist, dass es die Entwicklung der Benutzeroberfläche vereinfacht, was häufig einer der schwierigeren und langwierigeren Teile der Entwicklung von Webanwendungen ist.
Obwohl es möglich ist, Benutzeroberflächen mithilfe grundlegender Java-Webtechnologien (wie Java-Servlets und JavaServer Pages) ohne ein umfassendes Framework für die Entwicklung von Webanwendungen für Unternehmen zu erstellen, können diese Kerntechnologien häufig zu einer Vielzahl von Entwicklungs- und Wartungsproblemen führen. Noch wichtiger ist, dass bis die Entwickler eine Lösung in Produktionsqualität erreichen, die gleichen Probleme, die von JSF gelöst wurden, auf nicht standardmäßige Weise gelöst wurden. JavaServer Faces wurde entwickelt, um die Entwicklung von Benutzeroberflächen für Java-Webanwendungen auf folgende Weise zu vereinfachen:
• Es bietet einen komponentenorientierten, clientunabhängigen Entwicklungsansatz zum Erstellen von Webbenutzeroberflächen und verbessert so die Produktivität und Benutzerfreundlichkeit der Entwickler.
• Es vereinfacht den Zugriff und die Verwaltung von Anwendungsdaten über die Webbenutzeroberfläche.
• Der Status der Benutzeroberfläche zwischen mehreren Anforderungen und mehreren Clients wird auf einfache und unauffällige Weise automatisch verwaltet.
• Es bietet ein Entwicklungsframework, das für ein vielfältiges Entwicklerpublikum mit unterschiedlichen Fähigkeiten geeignet ist.
• Es beschreibt einen Standardsatz von Architekturmustern für eine Webanwendung.
Ich war es nicht, aber ich kann mir vorstellen, dass Sie einfach eine Antwort aus einem Buch kopiert und eingefügt haben.
Mawburn
7
@Oberon: Danke für die Antwort. Es dauerte eine Weile, bis ich die genauen Wörter gefunden hatte. Wenn es nicht angemessen ist, können Sie oder jemand mir vorschlagen, die Antwort zu notieren. Ich werde es gerne tun.
Kishor Prakash
18
Es gibt auch Situationen, in denen Sie JSP gegenüber JSF bevorzugen können. Die Art der Anwendung sollte der entscheidende Faktor für die Auswahl der Technologie sein.
Wenn Sie eine umfangreiche GUI-Interaktion haben und viel Java-Scripting benötigt, bevorzugen Sie JSF. Grundsätzlich ist JSF das Beste, wenn Ihre GUI-App-Architektur komponentenorientiert und sogar wie Swing gesteuert wird.
Wenn es sich bei der Anwendung nur um eine einfache Formularübermittlung handelt und nicht viel GUI-Interaktion erforderlich ist, kann JSP gut funktionieren, wenn das Erlernen einer neuen Technologie ein Overhead ist und auch ein komplexes Framework nicht erforderlich ist.
JSP wird einmal in ein Servlet konvertiert, wenn der Server eine Anforderung erhalten hat.
Gackern
... wenn der Server die erste Anfrage erhalten hat. Mind Caching.
Dbalakirev
10
Das stimmt, dass JSP zum Zeitpunkt der Ausführung in ein Servlet konvertiert wird und JSF völlig neu ist, um die Webseite besser lesbar zu machen, da JSF das Schreiben aller Programmierstrukturen in Form von Tags ermöglicht.
Der grundlegende Unterschied zwischen Servlets und JSP besteht darin, dass wir in Servlets Java-Code schreiben und HTML-Code einbetten, und dass es bei JSP nur einen umgekehrten Fall gibt. In JSP schreiben wir HTML-Code und binden Java-Code mithilfe von Tags ein, die von JSP bereitgestellt werden.
Java Server Pages (JSP) ist eine Java-Technologie, mit der Webentwickler und -designer schnell informationsreiche, dynamische Webseiten entwickeln und einfach warten können, die vorhandene Geschäftssysteme nutzen. Die JSP-Technologie trennt die Benutzeroberfläche von der Inhaltserstellung und ermöglicht es Designern, das gesamte Seitenlayout zu ändern, ohne den zugrunde liegenden dynamischen Inhalt zu ändern.
Facelets ist die erste Nicht-JSP-Seitendeklarationssprache für JSF (Java Server Faces), die JSF-Entwicklern im Vergleich zu JSP ein einfacheres und leistungsfähigeres Programmiermodell bietet. Es behebt verschiedene Probleme, die in JSP für die Entwicklung von Webanwendungen auftreten.
Hier ist eine Tabelle, die die Merkmale von Scriplets und Facelets vergleicht:
JSP hat einen eigenen Lebenszyklus jsp_init () jsp_service () jsp_destroy
Nach der ersten Anforderung konvertiert JSP in eine Java-Datei. Es gibt drei Arten von Tags, die wir verwenden:
1.) Skriptlos
<%%>
Hier kann der Entwickler all die Dinge deklarieren, die der Entwickler für die Daten verwenden möchte
2.) Ausdruckstag
<%=%>
Hier kann der Entwickler einige druckbezogene Daten verwenden
3.) Erklärung
<!%%>
Hier kann der Entwickler einige methodenbezogene Daten deklarieren.
Servlet:
Servlet hat seinen eigenen Lebenszyklus.
init()
service()
destroy()
Nach der ersten Anforderung liest der Container die Daten aus der Datei web.xml und nach der Begrüßung wird die Füllung angezeigt.
Nach dem Ausführen der Aktion wird nun die URL durchsucht und nach diesem Vorgang wird das jeweilige Servlet selbst durchsucht. Serviceoperation wird ausgeführt.
JSF:
JSF hat eine eigene Benutzeroberfläche und der Lebenszyklus kann auf sechs Arten ausgeführt werden:
JSPs sind die View-Komponente von MVC (Model View Controller). Der Controller nimmt die eingehende Anforderung entgegen und leitet sie an das Modell weiter. Dies kann eine Bean sein, die Datenbankzugriff ausführt. Die JSP formatiert die Ausgabe dann mit HTML, CSS und JavaScript, und die Ausgabe wird dann an den Anforderer zurückgesendet.
JSF ist ein fortschrittliches Framework, bei dem die auf Model-View-Controller (MVC) basierende Architektur für Projekte sehr einfach zu implementieren ist. Der Hauptvorteil von JSF gegenüber JSP ist das einfache dynamische Rendern der Komponenten im Browser basierend auf den Bedingungen und der einfachen Integration von Ajax-Ereignissen.
Das Frontend der JSF-Anwendung, dh xhtml-Dateien, werden dem Benutzer über den Browser angezeigt. Diese xhtml-Dateien rufen intern verwaltete Beans auf, z. B. Controller, auf denen die eigentliche Anwendungslogik geschrieben ist.
Die Controller rufen intern verschiedene Dienste auf, die mit der Datenbank kommunizieren (unter Verwendung der Hibernate- oder JPA-API). So geschieht der Fluss in Kürze.
JSF wird auch in Kombination mit RichFaces verwendet, einem Framework, mit dem Sie Ihrer Webanwendung ein umfassendes Erscheinungsbild verleihen können.
JSF + RichFaces + Hibernate / JPA ist eine gute Technologie, um sicher zu lernen!
Jsp hat auch eingebauten Servlet-Code, der keine externe Kompilierung benötigt. Er kann direkt ausgeführt werden. Änderungen werden in jsp direkt in einem Browser wirksam.
Servlet muss kompiliert werden (dh es wird eine bestimmte Klassenerstellung haben)
JSP steht für JAVA SERVER PAGE ........ jsp ist kein Servlet. Jsp verwendet Code und HTML-Tag an sich. Sie müssen kein HTML und kein Servlet separat erstellen. Jsp spielen eine großartige Rolle in Webanwendungen. Servlet ist eine Java-Klasse, die eine Rolle spielt, um Ihre HTML-Seite von statisch zu dynamisch zu machen.
JSPs werden tatsächlich in Servlet-Komponenten konvertiert. "JSPs werden zur Laufzeit in Servlets übersetzt". Quelle: en.wikipedia.org/wiki/JavaServer_Pages
dbalakirev
-2
Servlets sind die serverseitigen Java-Programme, die im Webcontainer ausgeführt werden. Das Hauptziel des Servlets besteht darin, die vom Client empfangenen Anforderungen zu verarbeiten.
Java Server Pages wird zum Erstellen dynamischer Webseiten verwendet. Jsp's wurden eingeführt, um Java plus HTML-Code in eine einzelne Datei zu schreiben, was im Servlet-Programm nicht einfach war. Und eine JSP-Datei wird bei der Übersetzung in ein Java-Servlet konvertiert.
Java Server Faces ist ein MVC-Webframework, das die Entwicklung der Benutzeroberfläche vereinfacht.
Antworten:
JSP (JavaServer Pages)
JSP ist eine Java-View-Technologie, die auf dem Server ausgeführt wird und es Ihnen ermöglicht, Vorlagentext in clientseitigen Sprachen (wie HTML, CSS, JavaScript usw.) zu schreiben. JSP unterstützt Taglibs , die von Java-Code unterstützt werden , mit denen Sie den Seitenfluss steuern oder dynamisch ausgeben können. Eine bekannte Taglib ist JSTL . JSP unterstützt auch die Ausdruckssprache , mit der auf Backend-Daten zugegriffen werden kann (über Attribute, die auf den Seiten-, Anforderungs-, Sitzungs- und Anwendungsbereichen verfügbar sind), hauptsächlich in Kombination mit Taglibs.
Wenn eine JSP zum ersten Mal angefordert wird oder wenn die Webanwendung gestartet wird, kompiliert der Servlet-Container sie in eine Klasse,
HttpServlet
die sie erweitert und während der Lebensdauer der Webanwendung verwendet. Sie finden den generierten Quellcode im Arbeitsverzeichnis des Servers. In Tomcat ist es beispielsweise das/work
Verzeichnis. Bei einer JSP-Anforderung führt der Servlet-Container die kompilierte JSP-Klasse aus und sendet die generierte Ausgabe (normalerweise nur HTML / CSS / JS) über den Webserver über ein Netzwerk an die Clientseite, die sie wiederum im Webbrowser anzeigt.Servlets
Servlet ist eine Java Application Programming Interface (API), die auf dem Server ausgeführt wird. Sie fängt vom Client gestellte Anforderungen ab und generiert / sendet eine Antwort. Ein bekanntes Beispiel ist das
HttpServlet
, das Methoden zum Verknüpfen von HTTP- Anforderungen mit den gängigen HTTP-Methoden wieGET
und bereitstelltPOST
. Sie könnenHttpServlet
s so konfigurieren , dass ein bestimmtes HTTP-URL-Muster, das inweb.xml
oder in jüngerer Zeit mit Java EE 6 konfiguriert werden kann , mit@WebServlet
Anmerkungen abgehört wird.Wenn ein Servlet zum ersten Mal oder während des Starts der Web-App angefordert wird, erstellt der Servlet-Container eine Instanz davon und speichert sie während der Lebensdauer der Web-App im Speicher. Dieselbe Instanz wird für jede eingehende Anforderung wiederverwendet, deren URL mit dem URL-Muster des Servlets übereinstimmt. Sie können auf die Anforderungsdaten von zugreifen
HttpServletRequest
und die Antwort von verarbeitenHttpServletResponse
. Beide Objekte sind als Methodenargumente in einer der überschriebenen Methoden von verfügbarHttpServlet
, z. B.doGet()
unddoPost()
.JSF (JavaServer Faces)
JSF ist ein komponentenbasiertes MVC-Framework , das auf der Servlet-API basiert und Komponenten über Taglibs bereitstellt , die in JSP oder einer anderen Java-basierten Ansichtstechnologie wie Facelets verwendet werden können . Facelets eignet sich viel besser für JSF als für JSP. Es bietet nämlich hervorragende Vorlagenfunktionen wie zusammengesetzte Komponenten , während JSP im Grunde nur die
<jsp:include>
Vorlagen für JSF-Vorlagen bietet , sodass Sie gezwungen sind, benutzerdefinierte Komponenten mit rohem Java-Code zu erstellen (was etwas undurchsichtig und mit viel mühsamer Arbeit verbunden ist), wenn Sie möchten eine wiederholte Gruppe von Komponenten durch eine einzelne Komponente ersetzen. Seit JSF 2.0 ist JSP als View-Technologie zugunsten von Facelets veraltet.Hinweis : JSP selbst ist NICHT veraltet, nur die Kombination von JSF mit JSP ist veraltet.
Hinweis : JSP verfügt mithilfe von Taglibs über hervorragende Vorlagenfunktionen, insbesondere die Variante ( Tag File ). Es fehlt an JSP-Vorlagen in Kombination mit JSF.
Als MVC - Framework ( Model-View-Controller ) bietet JSF
FacesServlet
den einzigen Request-Response- Controller . Sie müssen alle üblichen und langwierigen HTTP-Anforderungs- / Antwortarbeiten erledigen, z. B. Benutzereingaben sammeln, validieren / konvertieren, in Modellobjekte einfügen, Aktionen aufrufen und die Antwort rendern. Auf diese Weise erhalten Sie im Grunde eine JSP- oder Facelets-Seite (XHTML) für View und eine JavaBean-Klasse als Modell . Die JSF-Komponenten werden verwendet, um die Ansicht mit dem Modell zu verbinden (wie dies bei Ihrem ASP.NET-Websteuerelement der Fall ist), undFacesServlet
die JSF-Komponentenstruktur verwendet die gesamte Arbeit.Verwandte Fragen
quelle
<c:forEach>
Tag stammt von JSTL. Siehe auch stackoverflow.com/tags/jstl/info<mytag:doesSomething/>
sieht aus wie ein benutzerdefiniertes Tag und<jsp:attribute>
ein JSP-Tag.Siehe http://www.oracle.com/technetwork/java/faq-137059.html
Siehe https://jcp.org/en/introduction/faq
JSP ist eine spezielle Art von Servlet.
JSF ist eine Reihe von Tags, die Sie mit JSP verwenden können.
quelle
Aus Browser- / Client-Perspektive
JSP und JSF sehen beide gleich aus. Gemäß den Anwendungsanforderungen eignet sich JSP besser für Anwendungen, die auf Anforderungen und Antworten basieren.
JSF ist auf umfangreichere ereignisbasierte Webanwendungen ausgerichtet. Ich sehe das Ereignis als viel detaillierter als die Anfrage / Antwort.
Aus Serverperspektive
Die JSP-Seite wird in ein Servlet konvertiert und weist nur ein minimales Verhalten auf.
Die JSF-Seite wird (von einem speziellen FacesServlet) in einen Komponentenbaum konvertiert und folgt dem durch die Spezifikation definierten Komponentenlebenszyklus.
quelle
[ Quelle: Vollständige Referenz: JSF ]
quelle
Es gibt auch Situationen, in denen Sie JSP gegenüber JSF bevorzugen können. Die Art der Anwendung sollte der entscheidende Faktor für die Auswahl der Technologie sein.
Wenn Sie eine umfangreiche GUI-Interaktion haben und viel Java-Scripting benötigt, bevorzugen Sie JSF. Grundsätzlich ist JSF das Beste, wenn Ihre GUI-App-Architektur komponentenorientiert und sogar wie Swing gesteuert wird.
Wenn es sich bei der Anwendung nur um eine einfache Formularübermittlung handelt und nicht viel GUI-Interaktion erforderlich ist, kann JSP gut funktionieren, wenn das Erlernen einer neuen Technologie ein Overhead ist und auch ein komplexes Framework nicht erforderlich ist.
quelle
Servlet - es ist Java Server Side Layer.
quelle
Das stimmt, dass JSP zum Zeitpunkt der Ausführung in ein Servlet konvertiert wird und JSF völlig neu ist, um die Webseite besser lesbar zu machen, da JSF das Schreiben aller Programmierstrukturen in Form von Tags ermöglicht.
quelle
Der grundlegende Unterschied zwischen Servlets und JSP besteht darin, dass wir in Servlets Java-Code schreiben und HTML-Code einbetten, und dass es bei JSP nur einen umgekehrten Fall gibt. In JSP schreiben wir HTML-Code und binden Java-Code mithilfe von Tags ein, die von JSP bereitgestellt werden.
quelle
Java Server Pages (JSP) ist eine Java-Technologie, mit der Webentwickler und -designer schnell informationsreiche, dynamische Webseiten entwickeln und einfach warten können, die vorhandene Geschäftssysteme nutzen. Die JSP-Technologie trennt die Benutzeroberfläche von der Inhaltserstellung und ermöglicht es Designern, das gesamte Seitenlayout zu ändern, ohne den zugrunde liegenden dynamischen Inhalt zu ändern.
Facelets ist die erste Nicht-JSP-Seitendeklarationssprache für JSF (Java Server Faces), die JSF-Entwicklern im Vergleich zu JSP ein einfacheres und leistungsfähigeres Programmiermodell bietet. Es behebt verschiedene Probleme, die in JSP für die Entwicklung von Webanwendungen auftreten.
Hier ist eine Tabelle, die die Merkmale von Scriplets und Facelets vergleicht:
Quelle
quelle
JSP hat einen eigenen Lebenszyklus jsp_init () jsp_service () jsp_destroy
Nach der ersten Anforderung konvertiert JSP in eine Java-Datei. Es gibt drei Arten von Tags, die wir verwenden:
1.) Skriptlos
Hier kann der Entwickler all die Dinge deklarieren, die der Entwickler für die Daten verwenden möchte
2.) Ausdruckstag
Hier kann der Entwickler einige druckbezogene Daten verwenden
3.) Erklärung
Hier kann der Entwickler einige methodenbezogene Daten deklarieren.
Servlet hat seinen eigenen Lebenszyklus.
Nach der ersten Anforderung liest der Container die Daten aus der Datei web.xml und nach der Begrüßung wird die Füllung angezeigt.
Nach dem Ausführen der Aktion wird nun die URL durchsucht und nach diesem Vorgang wird das jeweilige Servlet selbst durchsucht. Serviceoperation wird ausgeführt.
JSF hat eine eigene Benutzeroberfläche und der Lebenszyklus kann auf sechs Arten ausgeführt werden:
Für ui hier für Tabelle hier verwenden wir Panel-Gitter und es gibt verschiedene Flächen dafür, das heißt.
quelle
JSPs sind die View-Komponente von MVC (Model View Controller). Der Controller nimmt die eingehende Anforderung entgegen und leitet sie an das Modell weiter. Dies kann eine Bean sein, die Datenbankzugriff ausführt. Die JSP formatiert die Ausgabe dann mit HTML, CSS und JavaScript, und die Ausgabe wird dann an den Anforderer zurückgesendet.
quelle
JSF ist ein fortschrittliches Framework, bei dem die auf Model-View-Controller (MVC) basierende Architektur für Projekte sehr einfach zu implementieren ist. Der Hauptvorteil von JSF gegenüber JSP ist das einfache dynamische Rendern der Komponenten im Browser basierend auf den Bedingungen und der einfachen Integration von Ajax-Ereignissen.
Das Frontend der JSF-Anwendung, dh xhtml-Dateien, werden dem Benutzer über den Browser angezeigt. Diese xhtml-Dateien rufen intern verwaltete Beans auf, z. B. Controller, auf denen die eigentliche Anwendungslogik geschrieben ist.
Die Controller rufen intern verschiedene Dienste auf, die mit der Datenbank kommunizieren (unter Verwendung der Hibernate- oder JPA-API). So geschieht der Fluss in Kürze.
JSF wird auch in Kombination mit RichFaces verwendet, einem Framework, mit dem Sie Ihrer Webanwendung ein umfassendes Erscheinungsbild verleihen können.
JSF + RichFaces + Hibernate / JPA ist eine gute Technologie, um sicher zu lernen!
quelle
Jsp hat auch eingebauten Servlet-Code, der keine externe Kompilierung benötigt. Er kann direkt ausgeführt werden. Änderungen werden in jsp direkt in einem Browser wirksam.
Servlet muss kompiliert werden (dh es wird eine bestimmte Klassenerstellung haben)
Jsf ist eine Ansichtskomponente von MVC Framework
quelle
JSP steht für JAVA SERVER PAGE ........ jsp ist kein Servlet. Jsp verwendet Code und HTML-Tag an sich. Sie müssen kein HTML und kein Servlet separat erstellen. Jsp spielen eine großartige Rolle in Webanwendungen. Servlet ist eine Java-Klasse, die eine Rolle spielt, um Ihre HTML-Seite von statisch zu dynamisch zu machen.
quelle
Servlets sind die serverseitigen Java-Programme, die im Webcontainer ausgeführt werden. Das Hauptziel des Servlets besteht darin, die vom Client empfangenen Anforderungen zu verarbeiten.
Java Server Pages wird zum Erstellen dynamischer Webseiten verwendet. Jsp's wurden eingeführt, um Java plus HTML-Code in eine einzelne Datei zu schreiben, was im Servlet-Programm nicht einfach war. Und eine JSP-Datei wird bei der Übersetzung in ein Java-Servlet konvertiert.
Java Server Faces ist ein MVC-Webframework, das die Entwicklung der Benutzeroberfläche vereinfacht.
quelle