全国咨询/投诉热线:400-618-4000

Java培训之禁用浏览器缓存

更新时间:2016年07月27日15时33分 来源:传智播客Java培训学院 浏览次数:

开发人员在项目开发阶段,一般都会禁用浏览器缓存,这样做的原因是为了每次访问都能够获得实时数据。当一个项目上线后,就不会再继续禁用浏览器缓存。今天我们要学习的内容就是如何禁用浏览器缓存。我们在学习使用meta元素禁用缓存时,已经见过三个响应头,如下所示:
  • Expires;
  • Cache-Control;
  • Pragma;
以上三个响应头一起使用就可以达到禁用浏览器缓存的目的。下面通过一个案例来学习如何使用它们禁用浏览器缓存。

1.禁用浏览器缓存案例练习

按照如下步骤完成禁用浏览器缓存案例练习:
(1)创建一个web应用,Example04,在该应用下新建一个Servlet类,CacheServlet,主要代码如例1-1所示:
例1-1 CacheServlet.java
public class CacheServlet extends HttpServlet {
    public void doGet(HttpServletRequest request, HttpServletResponse response)
           throws ServletException, IOException {
             response.getWriter().print("hello everyone");
    }
}
例1-1中,使用response对象向浏览器端响应“hello everyone“。
(2)CacheServlet在web.xml文件中其访问路径的配置为:“/CacheServlet“。
(3)将Example04应用发布到Tomcat服务器,然后启动Tomcat服务器,在浏览器地址栏上输入:http://localhost:8080/Example04/CacheServlet,并使用HttpWatch工具进行抓包,浏览器显示结果如图1-1所示:
图1-1 浏览器显示结果
(4)再次访问:http://localhost:8080/Example04/CacheSerlvet,浏览器显示结果如图1-2所示:
图1-2 浏览器显示结果
(5)对CacheServlet类中的doGet()方法中的代码进行修改,如例1-1所示:
例1-2 修改后的CacheServlet.java
public class CacheServlet extends HttpServlet {
    public void doGet(HttpServletRequest request, HttpServletResponse response)
           throws ServletException, IOException {
       //使用Cache-Control,pragma,expires三个响应头禁用浏览器缓存
            response.setHeader("Cache-Control", "no-cache");
            response.setHeader("pragma", "no-cache");
            response.setDateHeader("expires", -1);
             response.getWriter().print("GoodBye");
    }
}
(6)重新启动Tomcat服务器,关闭浏览器重新打开,然后再次访问CacheServlet,浏览器显示效果如图1-3所示:
图1-3 浏览器显示结果
(7)在浏览器端再次访问CacheServlet,浏览器显示效果如图1-4所示:
图1-4 浏览器显示结果
由图1-4可知,当第二次访问CacheServlet,服务器再次响应给浏览器,说明浏览器并没有缓存数据,可以将图1-4与图1-2进行比较可发现,图1-2是浏览器没有禁用缓存的效果,图1-4是浏览器禁用缓存的效果。

本文版权归传智播客Java培训学院所有,欢迎转载,转载请注明作者出处。谢谢!
作者:传智播客Java培训学院
首发:http://www.itcast.cn/javaee

javaee

python

web

ui

cloud

test

c

netmarket

pm

Linux

movies

robot

uids

北京校区

    14天免费试学

    基础班入门课程限时免费

    申请试学名额

    15天免费试学

    基础班入门课程限时免费

    申请试学名额

    15天免费试学

    基础班入门课程限时免费

    申请试学名额

    15天免费试学

    基础班入门课程限时免费

    申请试学名额

    20天免费试学

    基础班入门课程限时免费

    申请试学名额

    8天免费试学

    基础班入门课程限时免费

    申请试学名额

    20天免费试学

    基础班入门课程限时免费

    申请试学名额

    5天免费试学

    基础班入门课程限时免费

    申请试学名额

    0天免费试学

    基础班入门课程限时免费

    申请试学名额

    12天免费试学

    基础班入门课程限时免费

    申请试学名额

    5天免费试学

    基础班入门课程限时免费

    申请试学名额

    5天免费试学

    基础班入门课程限时免费

    申请试学名额

    10天免费试学

    基础班入门课程限时免费

    申请试学名额