[javaEE] 控制浏览器缓存资源

浏览器有默认的缓存机制,不同的浏览器,缓存头是不一样的

设置编码,调用setContentType()方法,参数:”text/html;charset=utf-8”

 

关闭缓存,调用setHeader()方法:参数:

”Expires”,-1

“Cache-Control”,”no-cache”

“Pragma”,”no-cache”

 

开启缓存,调用setHeader()方法:参数:

调用setDateHeaader()方法,参数:”Expires”,System.currentTimeMils()+毫秒,那个毫秒值有时候会变成负数,要用1000l long类型去乘

        response.setDateHeader("Last-Modified",new Date().getTime());
        response.setDateHeader("Expires",System.currentTimeMillis()+1000l*3600*24*30);//缓存1个月,注意1000后面是l
        response.setHeader("Cache-Control","Public");
        response.setHeader("Pragma","Pragma");
        FileInputStream file=new FileInputStream(this.getServletContext().getRealPath("1.jpg"));
        OutputStream os=response.getOutputStream();
        
        byte[] b=new byte[1024];
        int len=0;
        while((len=file.read(b))!=-1){
            os.write(b,0,len);
        }
        file.close();

 

相关文章

@ 注解能被用来为程序元素( 类、 方法、 成员变量等) 设置...
@ 1、线性表的概念 线性表是最常见也是最简单的一种数据结构...
简介 ArrayList是开发中使用比较多的集合,它不是线程安全的...
在 Java String类源码阅读笔记 里学习了String类的源码,Str...
话不多说,先上图。 1、基本概念 欲说线程,必先说进程。 进...
@ 网络基础 计算机网络是指两台或更多的计算机组成的网络,在...