要从服务器下载文件, 请参见以下简单示例。我假设你要下载的E驱动器中有home.jsp文件。如果有任何jar或zip文件, 则可以直接提供指向该文件的链接。因此, 无需编写要下载的程序。但是, 如果有任何Java文件或JSP文件等, 则需要创建一个程序来下载该文件。
在Servlet中从服务器下载文件的示例
在此示例中, 我们将创建三个文件:
- index.html
- DownloadServlet.java
- web.xml
该文件提供了下载文件的链接。
<
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开发)
推荐阅读
- 在NetBeans IDE中创建servlet示例图解
- Servlet中的事件和监听器
- Servlet中的CRUD操作示例图解
- 在myeclipse IDE中创建Servlet实例图解
- 创建servlet示例的详细步骤图解
- Servlet中的Cookie用法详解
- Jsp与Servlet|使用安全 jsp 与 servlet 完成用户登录(登录错误时账号密码回填)。登录成功后才能上传图片的图片管理系统。
- Win10无法安装Visual Studio 2017的处理办法
- Win10系统hosts保存时提示另存为该怎样办?