Servlet从服务器下载文件的示例

要从服务器下载文件, 请参见以下简单示例。我假设你要下载的E驱动器中有home.jsp文件。如果有任何jar或zip文件, 则可以直接提供指向该文件的链接。因此, 无需编写要下载的程序。但是, 如果有任何Java文件或JSP文件等, 则需要创建一个程序来下载该文件。
在Servlet中从服务器下载文件的示例
在此示例中, 我们将创建三个文件:

  • index.html
  • DownloadServlet.java
  • web.xml
index.html
该文件提供了下载文件的链接。
< a href="http://www.srcmini.com/servlet/DownloadServlet"> download the jsp file< /a>

DownloadServlet.java
这是servlet文件, 它读取文件的内容并将其写入流中以作为响应发送。为此, 我们需要通知服务器, 因此我们将内容类型设置为APPLICATION / OCTET-STREAM。
import java.io.*; import javax.servlet.ServletException; import javax.servlet.http.*; public class DownloadServlet extends HttpServlet {public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {response.setContentType("text/html"); PrintWriter out = response.getWriter(); String filename = "home.jsp"; String filepath = "e:\\"; response.setContentType("APPLICATION/OCTET-STREAM"); response.setHeader("Content-Disposition", "attachment; filename=\"" + filename + "\""); FileInputStream fileInputStream = new FileInputStream(filepath + filename); int i; while ((i=fileInputStream.read()) != -1) { out.write(i); } fileInputStream.close(); out.close(); }}

web.xml文件
【Servlet从服务器下载文件的示例】该配置文件向服务器提供有关Servlet的信息。
< web-app> < servlet> < servlet-name> DownloadServlet< /servlet-name> < servlet-class> DownloadServlet< /servlet-class> < /servlet> < servlet-mapping> < servlet-name> DownloadServlet< /servlet-name> < url-pattern> /servlet/DownloadServlet< /url-pattern> < /servlet-mapping> < /web-app>

下载此示例(无IDE开发)
下载此示例(使用Myeclipse IDE开发)
下载此示例(使用Eclipse IDE开发)
下载此示例(使用Netbeans IDE开发)

    推荐阅读