servlet设置缓存时间以及文件的下载

缓存时间的设置:

复制代码
1 public void doGet(HttpServletRequest request, HttpServletResponse response)
2             throws ServletException, IOException {
3 
4         response.setContentType("text/html;charset=UTF-8");
5         PrintWriter out = response.getWriter();
6         response.setDateHeader("Expires", System.currentTimeMillis()+60*60*1000);//缓存时间一小时
7         out.write("hello world");
8 }

 

通知客户端文件的下载,此处以图片为例:

 1     public void doGet(HttpServletRequest request, HttpServletResponse response)
 2             throws ServletException, IOException {
 3         response.setContentType("text/html");
 4         ServletContext context=getServletContext();
 5         
 6         String path=context.getRealPath("/picture.jpg");
 7         String fileName=path.substring(path.lastIndexOf("\\")+1);
 8         InputStream in=new FileInputStream(path);
 9         
10         //通知客户端文件的下载    URLEncoder.encode解决文件名中文的问题
11         response.setHeader("Content-Disposition", "attachment;filename="+URLEncoder.encode(fileName, "utf-8"));
12         response.setHeader("Content-Type", "application/octet-stream");
13         
14         OutputStream out=response.getOutputStream();
15         int length=-1;
16         byte []buffer=new byte[1024];
17         while((length=in.read(buffer))!=-1){
18             out.write(buffer,0,length);
19         }
20         in.close();
21     }

 实例:

       HttpServletResponse response = inv.getResponse();
       // response.setContentType("application/xls");
      response.setContentType("application/x-download");//下载文件
      response.reset();
      response.setContentType("bin");
      String header = "attachment;filename=returnSupplyData"+dateStr+".xls";//下载文件的名字
       response.addHeader("Content-Disposition", header);
       String sheetName="自营退货订单明细";

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值