Struts2 bietet einen Stream -Ergebnistyp, der speziell zum Download des Datei verwendet wird. Die folgenden 4 Eigenschaften sind erforderlich, um das Ergebnis der Konfiguration des Stream -Typs anzugeben.
ContentType: Geben Sie den Dateityp der heruntergeladenen Datei an
Eingabename: Geben Sie den Eintrags -Eingabestream der heruntergeladenen Datei an
ContentDisposition: Geben Sie den heruntergeladenen Dateinamen an
Puffersize: Geben Sie beim Herunterladen der Datei die Puffergröße an
Struts2 -Datei -Download -Beispiel:
1. Aktion zur Verarbeitung von Datei -Downloads:
/** * Beschreibung: Struts2 -Steuerdatei herunterladen * Autor: elf * Datum: 2018/1/24 10:39 */öffentliche Klasse FileAction erweitert die AktionSverpackung. // Datei Download public String download () {// Geben Sie den Speicherort der heruntergeladenen Ressource an und geben Sie die entsprechenden Eingangsstrom-String-String-Path = "/web-inf/images/lib.zip zurück" zurück; // Verwenden Sie GetResourceAsStream (), um die angegebene Datei in den entsprechenden Eingabestream TargetFile = ServletActionContext.getServletContext () umzuwandeln. GetResourceAsStream (Pfad); Erfolgserfolg; } // Get Method public InputStream GetTargetFile () {return targetFile; }}Um eine Datei herunterzuladen, müssen Sie zunächst die heruntergeladenen Dateiressourcen haben. Hier platziere ich die heruntergeladene Datei unter dem Web-Inf/Images-Pfad des Projekts. Sie können dies entsprechend Ihren eigenen Anforderungen tun und dann die von ServletContext bereitgestellte GetResourceAsStream () -Methode zur Rückgabe des der angegebenen Datei zurückgegebenen Eingabestreams verwenden.
2. Konfigurieren Sie Struts.xml
<? value = "false" /> <constant name = "struts.devMode" value = "true" /> <package name = "Standard" namespace = " /" extends = "struts-default"> <actionname = "Datei_*" methode = "{1}"> <!-Datei herunterladen-> <! name = "contentType"> application/ZIP </param> <!-Image/jpg-> <!-Geben Sie den Namen des Eingabestreams an, der die heruntergeladene Datei in der Aktion zurückgibt. name = "inputName"> targetFile </param> <param name = "contentDisposition"> fileName = "aaa.zip" </param> <!-Geben Sie die Puffergröße der heruntergeladenen Datei an-> <param name = "bufferSize"> 4096 </param> </result> </action> </paket> </stRUTS> </stRUTS>> </stRUTs>Geben Sie den Zugriffspfad für den entsprechenden Datei -Download in der Browser -Adressleiste ein, z. B. http: // localhost: 8080/Demo/file_download, um die Datei herunterzuladen. /
Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.