1.简单界面
<p>文件名为:<a href="downfile?fileName=<s:property value="f"/>"><s:property value="f"/>
</a> </p>做一个简单超链接
2.xml配置
<action name="downfile" class="action.downFileAction">
<param name="inputPath">/uploadFile</param>
<result name="success" type="stream">
<param name="contentType">application/octet-stream</param>
<param name="inputName">inputStrem</param>
<param name="contentDisposition">attachment;filename="${fileName}"</param>
<param name="bufferSize">4096 </param>
</result>
3.Action处理
package action;
import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;
import org.apache.struts2.ServletActionContext;
public class downFileAction {
private String fileName;
private InputStream inputStrem;
private String inputPath;
public String execute(){
return "success";
}
public String getFileName() {
return fileName;
}
public void setFileName(String fileName) {
this.fileName = fileName;
}
public InputStream getInputStrem() throws Exception {
return new BufferedInputStream(new FileInputStream(getInputPath()+"\\"+fileName));
}
public void setInputStrem(InputStream inputStrem) {
this.inputStrem = inputStrem;
}
public String getInputPath() {
return ServletActionContext.getServletContext().getRealPath(inputPath);
}
public void setInputPath(String inputPath) {
this.inputPath = inputPath;
}
}