简单文件下载,servlet+jsp
2016-02-24 11:53
519 查看
服务器端
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
String filename=request.getParameter("filename");
System.out.println(filename);
String path=getServletContext().getRealPath("/");
String folder="upload/";
String z=path+folder+filename;
response.setHeader("Content-Disposition", "attachment;filename="+filename+"");//download 必须设置
File file=new File(z);
InputStream is=new FileInputStream(file);
OutputStream os=response.getOutputStream();
byte[] b=new byte[1024];
int len=0;
while((len=is.read(b))!=-1){
os.write(b, 0, len);
}
os.flush();
os.close();
is.close();
System.out.println("download success");
}
jsp
<a href="DownLoadSevlet?filename=${refFile}" >download</a> //retFile是后台request传来的文件名,如xxxx.mp4,或者自己写一个upload下存在的文件名称
web.xml
<servlet-name>DownLoadSevlet</servlet-name>
<servlet-class>test.DownLoadSevlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>DownLoadSevlet</servlet-name>
<url-pattern>/DownLoadSevlet</url-pattern>
</servlet-mapping>
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
String filename=request.getParameter("filename");
System.out.println(filename);
String path=getServletContext().getRealPath("/");
String folder="upload/";
String z=path+folder+filename;
response.setHeader("Content-Disposition", "attachment;filename="+filename+"");//download 必须设置
File file=new File(z);
InputStream is=new FileInputStream(file);
OutputStream os=response.getOutputStream();
byte[] b=new byte[1024];
int len=0;
while((len=is.read(b))!=-1){
os.write(b, 0, len);
}
os.flush();
os.close();
is.close();
System.out.println("download success");
}
jsp
<a href="DownLoadSevlet?filename=${refFile}" >download</a> //retFile是后台request传来的文件名,如xxxx.mp4,或者自己写一个upload下存在的文件名称
web.xml
<servlet-name>DownLoadSevlet</servlet-name>
<servlet-class>test.DownLoadSevlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>DownLoadSevlet</servlet-name>
<url-pattern>/DownLoadSevlet</url-pattern>
</servlet-mapping>
相关文章推荐
- 解决JS浮点数(小数)计算加减乘除的BUG
- C#处理json数据
- JS使用[ ]来访问对象属性
- JS函数方法的prototype 属性
- js堆栈溢出错误
- js堆栈溢出错误
- js中的事件委托
- 使用eval()方法可以实现动态执行js
- JavaScript的Boolean逻辑运算探究
- JSP指令-page、include、taglib指令
- js中outerHTML的问题
- 关于JavaScript的沙箱模式
- 【javascript】创建对象的几种方式
- JS原型与原型链终极详解
- JavaScript实现99乘法表及隔行变色实例代码
- ejs 文档翻译
- JS回调函数
- JavaScript简介与工作原理
- 返回值重载,安全访问JSON反序列化生成的NSDictionary
- JavaScript中Object.prototype.toString方法的原理