Servlet中的文件下载

  1. public void doGet(HttpServletRequest request, HttpServletResponse response)   
  2.                     throws ServletException, IOException {   
  3.     response.setContentType("application/jar");   
  4.        
  5.     ServletContext ctx = getServletContext();   
  6.     InputStream is = ctx.getResourceAsStream("/bookCode.jar");   
  7.        
  8.     int read = 0;   
  9.     byte[] bytes = new byte[1024];   
  10.        
  11.     OutputStream os = response.getOutputStream();   
  12.     while ((read = is.read(bytes)) != -1) {   
  13.         os.write(bytes, 0, read);   
  14.     }   
  15.     os.flush();   
  16.     os.close();   
  17. }  

response.setContentType("application/jar")指定响应的是一个JAR文件,而不是HTML。

getResourceAsStream()方法要求以一个斜线(“/”)开头,这表示Web应用的根。

摘自《Head First Servlet & JSP(中文版)》129页

你可能感兴趣的:(html,jsp,Web,servlet,OS)