21xrx.com
2024-12-23 00:27:58 Monday
登录
文章检索 我的文章 写文章
Java实现文件下载功能教程及代码案例
2023-06-19 20:45:44 深夜i     --     --
Java 文件下载 HttpServlet

在Java中实现文件下载功能是一项常见的需求,尤其是在Web开发中,很多网站需要提供文件下载服务。本文将介绍如何使用Java实现文件下载功能并提供代码案例。

1. 首先,需要创建一个HttpServlet类来接受下载请求并向浏览器返回文件。代码如下:


public class DownloadServlet extends HttpServlet {

  protected void doGet(HttpServletRequest request,

      HttpServletResponse response) throws ServletException, IOException {

    //获取文件名

    String fileName = "example.txt";

    //设置文件MIME类型

    response.setContentType("application/octet-stream");

    //设置Content-Disposition

    response.setHeader("Content-Disposition", "attachment;filename="+fileName);

    //读取文件

    InputStream in = getServletContext().getResourceAsStream("/file/"+fileName);

    OutputStream out = response.getOutputStream();

    //写文件

    int len = 0;

    byte[] buffer = new byte[1024];

    while ((len = in.read(buffer)) > 0) {

      out.write(buffer,0,len);

    }

    in.close();

    out.close();

  }

}

其中,`getServletContext().getResourceAsStream("/file/"+fileName)`是将文件读入内存,这里文件放在Web应用程序的file目录下。

2. 在web.xml中将此servlet映射到URL:


   DownloadServlet

   com.example.DownloadServlet

   DownloadServlet

   /download

3. 最后在HTML中添加链接来触发文件下载:


下载文件

这样就可以实现文件下载功能了。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复