Struts2下载项目中文件
1.文件所在项目位置
2.Action
protected InputStream InputStream;
protected String fileName;
public String view() throws Exception {
// 服务器中EXCEL文件Url
String filePath = "/download/2019-03-28/********.xlsx";
// 根据地址获取文件名称
String iName[] = filePath.split("\\/");
fileName = iName[iName.length - 1];// ********.xlsx
// 传输
InputStream = ServletActionContext.getServletContext().getResourceAsStream(filePath);
return "xlsx";
}
public InputStream getInputStream() {
return InputStream;
}
public void setInputStream(InputStream inputStream) {
InputStream = inputStream;
}
public String getFileName() {
return fileName;
}
public void setFileName(String fileName) {
this.fileName = fileName;
}
3.Struts.xml
<action name="view" class="*********************"
method="view">
<result name="xlsx" type="stream">
<param name="contentType">application/octet-stream</param>
<!-- 对应Action中fileName -->
<param name="contentDisposition">attachment;filename="${fileName}"</param>
<param name="bufferSize">1024</param>
<!-- 对应Action中InputStream -->
<param name="inputName">InputStream</param>
</result>
</action>