struts 文件下载
=============================struts 文件下載 ?==================================
步驟一: JSP頁面
<a href="download.action?fileName=IMG_0443.JPG">點(diǎn)擊此處下載圖片</a>
步驟二: Action頁面
package org.zm.action;
import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;
import org.apache.struts2.ServletActionContext;
import com.opensymphony.xwork2.ActionSupport;
public class DownLoadAction extends ActionSupport{
//讀取下載文件的目錄
private String inputPath;
//下載文件的文件名
private String fileName;
//讀取下載文件的輸入流
private InputStream inputStream;
//下載文件的類型
private String conetntType;
//創(chuàng)建InputStream輸入流
public InputStream getInputStream() throws FileNotFoundException{
String path=ServletActionContext.getServletContext().
getRealPath(inputPath);
return new BufferedInputStream(new FileInputStream(path+"\\"+
fileName));
}
@Override
public String execute() {
return SUCCESS;
}
public void setInputStream(InputStream inputStream) {
this.inputStream = inputStream;
}
public String getFileName() {
return fileName;
}
public void setFileName(String fileName) {
this.fileName = fileName;
}
public String getConetntType() {
return conetntType;
}
public String getInputPath() {
return inputPath;
}
public void setInputPath(String inputPath) {
this.inputPath = inputPath;
}
public void setConetntType(String conetntType) {
this.conetntType = conetntType;
}
}
?
步驟三: Struts.xml文件
<action name="download" class="org.zm.action.DownLoadAction">
<param name="inputPath">/upload</param>
<result name="success" type="stream">
<param name="contentType">image/pjpeg</param>
<param name="inputName">inputStream</param>
<param name="contentDisposition">attachment;filename="${fileName}"</param>
<param name="bufferSize">4096</param>
</result>
</action>
提示: Stream結(jié)果類型
contentType: 設(shè)置發(fā)送到瀏覽器的MIME類型
contentLength: 文件大小
contentDisposition: 設(shè)置響應(yīng)的HTTP頭信息的Content-Disposition參數(shù)的值
inputName: 指定Action提供的inputStream類型的屬性名稱
bufferSize:設(shè)置讀取和下載文件時(shí)緩沖區(qū)的大小
struts.xml文件和Action 這兩處位置的變量名稱一定要正確。
轉(zhuǎn)載于:https://www.cnblogs.com/Theladyflower/p/4624228.html
總結(jié)
以上是生活随笔為你收集整理的struts 文件下载的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android IOS WebRTC 音
- 下一篇: 深入理解计算机系统(1.3)---金字塔