Frage an java, jsp, tomcat7 – Wie erstelle ich einen Ordner in Tomcat Webserver mit Java-Programm?

0

Ich möchte wissen, wie man einen Ordner im Webserver (Tomcat 7.0) in Java erstellt.

Ich habe vor kurzem ein Projekt gestartet. In diesem Projekt muss ich Dateien vom Client-Computer auf den Server hochladen. In diesem Fall hat jeder Client seinen eigenen Ordner auf dem Server und lädt die Dateien in diesen hoch.

Und in jedem Benutzerordner befinden sich mehr als zwei JSP-Dateien. Wenn der Benutzer den Server auffordert, seinen Inhalt durch eine URL (z. B. ipaddress: portnumber / userid / index.jsp) mit diesen Dateien anzuzeigen, möchte ich seine hochgeladenen Daten anzeigen.

ist es möglich.?

Bitte führen Sie mich, um dieses Problem zu lösen. Vielen Dank.

Deine Antwort

3   die antwort
1

Ok, los geht's.

try {
  File f = new File("file/path/name/.ext");
  if(!f.isDirectory()) {
     boolean success = (new File(f)).mkdirs();
  }
  if(success) {
     System.out.println("Success")
  }
} catch(Exception e) {}

Das ist es. Ich hoffe das funktioniert. Ciao

1

Sie greifen von einer Webanwendung aus wie von jeder anderen Java-Anwendung auf Dateien und Ordner zu: mitjava.io.File oder vielleichtDer neue File I / O-Mechanismus von JDK7. Siehe auch dieJava I / O Tutorial und die dateibezogenen Hilfsprogramme vonApache Commons IO.

1

Bezüglich Ihrer konkreten Frage genauso wie in einer normalen Java-Anwendung.

File root = new File("/path/to/all/uploads");
File newfolder = new File(root, "/userid");
newfolder.mkdir();
// ...

Tun Sie dies nicht, wenn Sie diese kopypastierten JSP-Dateien in allen Ordnern verwenden möchten. Haben Sie nur ein einziges Servlet, das zum Beispiel zugeordnet ist/files/* und liest den Ordner, der für den aktuell angemeldeten Benutzer spezifisch ist, und leitet ihn schließlich an die JSP weiter, um die Ergebnisse zu präsentieren. Oder wenn Sie die Uploads wirklich öffentlich machen möchten, damit jeder Benutzer die Uploads des anderen sehen kann, geben Sie die gewünschte Benutzer-ID als Parameter oder Pfadinfo in der Anforderungs-URL wie folgt anhttp://localhost:8080/context/files/userid.

Beachten Sie, dass Sie die Dateien nicht im erweiterten WAR-Ordner speichern sollten, da sie sonst bei jeder erneuten Bereitstellung der Webanwendung verloren gehen. Speichern Sie sie auf einem festen Pfad außerhalb von Tomcat/webapps Mappe.

Wenn es als Netzwerklaufwerk auf "mainserver" zugeordnet ist, können Sie es einfach weiter verwendenFile. Wenn nicht, müssen Sie sich an den zuständigen Serveradministrator wenden, um zu erfahren, wie er auf sein Festplattendateisystem zugreift. BalusC
vielen Dank..:) mani
Vielen Dank für Ihre Antwort. Es hilft mir. Ich habe einen anderen Zweifel. Angenommen, ich habe einen Hauptserver und mehr als einen Unterserver, die mit dem Hauptserver verbunden sind. Wenn der Benutzer auf meine Anwendung im Hauptserver zugreift und die Daten auf einen Unterserver hochladen möchte. Ist es möglich, einen neuen Ordner im Subserver vom Hauptserver aus anzulegen. Hier sind die IP-Adressen des Subservers bekannt. mani

Verwandte Fragen