博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用Servlet实现下载文件的功能
阅读量:6000 次
发布时间:2019-06-20

本文共 1853 字,大约阅读时间需要 6 分钟。

在前台有一个下载链接,比如

 

 

使用Servlet实现下载:

 

 

import java.io.File;  import java.io.FileInputStream;  import java.io.IOException;  import java.net.URLEncoder;    import javax.servlet.ServletException;  import javax.servlet.ServletOutputStream;  import javax.servlet.http.HttpServlet;  import javax.servlet.http.HttpServletRequest;  import javax.servlet.http.HttpServletResponse;    public class DownLoadServlet extends HttpServlet {              public DownLoadServlet() {          super();      }          public void destroy() {          super.destroy(); // Just puts "destroy" string in log          // Put your code here      }          public void doGet(HttpServletRequest request, HttpServletResponse response)              throws ServletException, IOException {          doPost(request,response);      }              public void doPost(HttpServletRequest request, HttpServletResponse response)              throws ServletException, IOException {          //处理请求          //读取要下载的文件          File f = new File("E:/好久不见.mp3");          if(f.exists()){              FileInputStream  fis = new FileInputStream(f);              String filename=URLEncoder.encode(f.getName(),"utf-8"); //解决中文文件名下载后乱码的问题              byte[] b = new byte[fis.available()];              fis.read(b);              response.setCharacterEncoding("utf-8");              response.setHeader("Content-Disposition","attachment; filename="+filename+"");              //获取响应报文输出流对象              ServletOutputStream  out =response.getOutputStream();              //输出              out.write(b);              out.flush();              out.close();          }                   }        /**      * Initialization of the servlet. 
* * @throws ServletException if an error occurs */ public void init() throws ServletException { // Put your code here } }

 

 

 

配置文件注意路径。。。

转载地址:http://bpkmx.baihongyu.com/

你可能感兴趣的文章
深入浅出JQuery (二) 选择器
查看>>
CI框架 -- 驱动器
查看>>
FastMQ V0.2.0 stable版发布
查看>>
对象复制
查看>>
Mongodb内嵌数组的完全匹配查询
查看>>
MyBatis学习笔记(四) 注解
查看>>
hihoCoder #1015 : KMP算法【KMP裸题,板子】
查看>>
用sublime 3搭建php 运行环境
查看>>
主机安装
查看>>
windows基础(二)
查看>>
Mysql/Mariadb 升级注意事项
查看>>
event.preventDefault() 和 return false 都可以终止程序,二者有什么异同点?(转)
查看>>
简单实现验证码
查看>>
游戏 找CALL技巧 突破口
查看>>
java程序员面试经典问题总汇
查看>>
css position:absolute 如何居中对齐
查看>>
MySQL各种日期类型与整型(转)
查看>>
linux:sed高级命令之n、N(转)
查看>>
mass Framework class模块v12
查看>>
Android错误-error: Found text " " where item tag is expected
查看>>