ServletContext.getRealPath("/") Bedeutung und Verwendung
Einführung
In der Servlet-Programmierung gilt ServletContext.getRealPath( ) konvertiert einen Webinhaltspfad (den Pfad in der erweiterten WAR-Ordnerstruktur) in ein absolutes Festplattendateisystem Pfad.
Verwendung von „/“ in getRealPath()
Das an getRealPath() übergebene „/“ stellt das Webinhaltsstammverzeichnis oder das Verzeichnis dar, in dem sich alle Webinhalte befinden -zugänglicher Inhalt wird gefunden. Es entspricht dem Ordner /web in der folgenden Projektstruktur:
YourWebProject
|-- src
|-- web
|-- META-INF
|-- WEB-INF
|-- index.jsp
|-- login.jsp
Nach dem Login kopieren
Verwendungsszenarien
Wann sollten Sie getRealPath("/") verwenden?
-
Keine sinnvollen Anwendungsfälle: Vermeiden Sie in den meisten Fällen die Verwendung von getRealPath() Szenarien. Es gibt tragbarere und zuverlässigere Alternativen.
Alternativen zu getRealPath()
-
Webressourcen lesen:Verwenden Sie ServletContext. getResourceAsStream() stattdessen für einen Eingabestream des Ressource.
-
Webressourcen auflisten: Verwenden Sie ServletContext.getResourcePaths() für eine Liste aller verfügbaren Webressourcenpfade.
-
Hochgeladene Dateien speichern oder temporäre Dateien erstellen : Weitere Informationen finden Sie im Abschnitt „Siehe auch“. unten.
Vorsichtsmaßnahmen
-
Verlorene Änderungen:Änderungen am Festplattendateisystempfad, der von getRealPath() erhalten wird, werden gehen bei der WAR-Neubereitstellung verloren, da sie nicht im WAR gespeichert werden Datei.
-
Unzuverlässigkeit: getRealPath() gibt möglicherweise Null oder unerwartete Pfade zurück, wenn der Server nicht für die Erweiterung der WAR-Datei auf das Festplattendateisystem konfiguriert ist.
Das obige ist der detaillierte Inhalt vonWas ist die Bedeutung und Verwendung von ServletContext.getRealPath('/')?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!