Wofür wird WEB-INF in einer Java EE-Webanwendung verwendet?
Das WEB-INF-Verzeichnis ist eine wichtige Komponente von Java EE-Webanwendung. In der Servlet 2.4-Spezifikation definiert, dient er als Container für Ressourcen, die nicht für den öffentlichen Zugriff vorgesehen sind.
Gemäß der Spezifikation „ist der WEB-INF-Knoten nicht Teil des öffentlichen Dokumentbaums der Anwendung.“ . Keine im WEB-INF-Verzeichnis enthaltene Datei darf vom Container direkt an einen Client bereitgestellt werden. Dadurch wird sichergestellt, dass sensible Ressourcen und Konfigurationen von außerhalb der Anwendung nicht zugänglich bleiben.
Gemeinsame Inhalte von WEB-INF
Typischerweise enthält WEB-INF die folgenden Ressourcen:
Flexibilität mit JSP-Dateien
Während JSP-Dateien üblicherweise in WEB-INF abgelegt werden, können sie sich technisch gesehen an anderer Stelle befinden. Für den Zugriff durch den Servlet-Code wird jedoch empfohlen, sie innerhalb von WEB-INF bereitzustellen.
Zusätzliche Elemente für WAR-Dateien
Die WAR-Dateien (Web Application Archive), in Wikipedia beschrieben, zusätzliche hinzufügen Ordner:
Build-Prozess und WAR Struktur
Es ist wichtig, zwischen der Projektstruktur und der endgültigen WAR-Dateistruktur zu unterscheiden. Während einige Ressourcen direkt im WEB-INF-Ordner abgelegt werden können, werden andere, wie kompilierte Klassen und Bibliotheken, durch einen Build-Prozess verwaltet.
Beispiel
Für Beispielsweise definiert Apache Maven Standardeinstellungen für die Zuordnung von Ressourcen aus der Projektstruktur zur WAR-Datei. In diesem Fall werden die Verzeichnisse src/main/java und src/main/resources automatisch kompiliert und zum Laden der Klasse in den Ordner WEB-INF/classes kopiert.
Fazit
WEB-INF ist ein kritisches Verzeichnis in Java EE-Webanwendungen, das ein sicheres und zugängliches Repository für Ressourcen bietet, die für die Anwendungsfunktionalität wichtig sind, und gleichzeitig vertrauliche Informationen vor externen Zugriffen schützt Zugriff.
Das obige ist der detaillierte Inhalt vonWas ist der Zweck des WEB-INF-Verzeichnisses in einer Java EE-Webanwendung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!