public class ServletDownload extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
ServletContext sc = getServletContext();
String type = sc.getMimeType("abc.jpg");
response.setContentType(type);
//0 设置响应头=> 提示用户保存名称 => Http协议不支持中文码表=> %E5%C3 => URLEncoder.encode("apache-汤姆-6.0.35.exe","UTF-8");
response.setHeader("Content-Disposition", "attachment;filename="+"photo.jpg");
InputStream inputStream =sc.getResourceAsStream("/WEB-INF/photo.jpg");
System.out.println(sc + " "+ inputStream);
ServletOutputStream outputStream = response.getOutputStream();
byte[] buff=new byte[1024];
int len=-1;
while (inputStream.read(buff)!=-1) {
outputStream.write(buff);
outputStream.flush();
}
outputStream.close();
inputStream.close();
}
}
response对象实现下载
最新推荐文章于 2022-01-18 21:41:51 发布
本文介绍了一个简单的Java Web文件下载示例,通过Servlet实现文件从服务器到客户端的下载过程。该示例使用了HttpServletResponse来设置响应头并指定下载文件名,通过InputStream读取文件内容,并使用ServletOutputStream将文件输出到客户端。
242

被折叠的 条评论
为什么被折叠?



