实现下载功能,可是这里所下载的内容是由本地服务器发回的response信息(即返回给浏览器的响应信息)并不是下面f:/aa文件目录下的文件
特此申明一下!
创建的Bean文件为
package cn.java;
/**
* tomcat5.5服务器提供了方便的下载功能,
* 只需要让内置对象request调用方法setHeader,
* 添加下载的头给客户的浏览器即可
* 浏览器收到该头后就会打开相应的下载对话框
* response调用setHeader()方法
* 添加下载头的格式如下:
* response.setHeader("Content-disposition","attachment;filename="下载的文件的文件");
* */
import java.io.*;
import javax.servlet.http.*;
public class DownLoadFile {
HttpServletResponse response;
String fileName;
public String getFileName() {
return fileName;
}
public void setFileName(String fileName) {
this.fileName=fileName;
File fileLoad=new File("f:/aa",fileName);
//客户使用下载文件的对话框
response.setHeader("Content-disposition","attachment;filename="+fileName);
}
public HttpServletResponse getResponse() {
return response;
}
public void setResponse(HttpServletResponse response) {
this.response = response;
}
}
downfile.jsp内容如下
<%@page contentType="text/html;charset=gb2312"%>
<%@page import="cn.java.DownLoadFile"%>
<%@page import="java.io.*"%>
<jsp:useBean id="downFile" class="cn.java.DownLoadFile" scope="page"/>
<html><body><p>选择要下载的文件:
<form action="">
<Select name="fileName">
<Option value="book.zip">book.zip
<Option value="a.java">a.java
<Option value="b.jsp">b.jsp
</select>
<input type="submit" value="提交你的选择" name="submit">
</form>
<%
downFile.setResponse(response);
%>
<jsp:setProperty name="downFile" property="fileName" param="fileName"/>
</body></html>