ゞ沉默是金ゞ
鱼离不开水,但是没有说不离开哪滴水.
BlogJava
首页
新随笔
新文章
联系
聚合
管理
posts - 98,comments - 104,trackbacks - 0
<
2008年12月
>
日
一
二
三
四
五
六
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
常用链接
我的随笔
我的文章
我的评论
我的参与
最新评论
留言簿
(3)
给我留言
查看公开留言
查看私人留言
随笔分类
Ant
Broker(1)
DB(8)
EJB(2)
eXtreme(7)
Hibernate
HTTP(6)
Java EE(8)
Java SE(31)
Jrules
Maven
Spring
Spring基础(1)
Struts
webservice(2)
其他收集(6)
性能测试(1)
搜索引擎
面试相关
随笔档案
2012年12月 (1)
2012年11月 (1)
2012年8月 (16)
2012年7月 (6)
2012年6月 (11)
2011年3月 (1)
2010年12月 (1)
2010年11月 (2)
2010年8月 (1)
2010年7月 (3)
2010年5月 (1)
2010年1月 (1)
2009年12月 (3)
2009年11月 (2)
2009年8月 (1)
2009年6月 (4)
2009年5月 (1)
2009年4月 (1)
2009年3月 (6)
2009年2月 (3)
2008年12月 (4)
文章分类
EJB(1)
代码收集
实用脚本
文章档案
2012年6月 (2)
2012年1月 (1)
2011年8月 (1)
2009年11月 (1)
2009年3月 (1)
2009年2月 (2)
搜索
最新评论
1. re: How to Create Client/Server Keystores using Java Keytool
Shawn?
--Freud
2. re: HTTP/1.1 Cache-Control的理解
这是网页代码,还是IIS 代码
--marmoglass
3. re: How To Avoid javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated Problem Using Apache HttpClient
评论内容较长,点击标题查看
--dashi99
4. re: How To Avoid javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated Problem Using Apache HttpClient
评论内容较长,点击标题查看
--shigangxing
5. re: Part 12: java.util.concurrent : SingleThreadPool Example
评论内容较长,点击标题查看
--NotNolyJava
阅读排行榜
1. HTTP/1.1 Cache-Control的理解(10085)
2. MYSQL 连接数据库命令收藏(8610)
3. 什么是RFC?(6595)
4. can not be represented as java.sql.Timestamp(5938)
5. How To Avoid javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated Problem Using Apache HttpClient(3625)
评论排行榜
1. Java应用基础:网友精选25个Java试题分享(18)
2. 踏实与成功(11)
3. Eclipse中10个比较有用的快捷键组合(转)(7)
4. 摘:一个Java程序员应该掌握的10项技能(6)
5. Java获取客户端真实IP地址的两种方法(5)
HTTP/1.1 Cache-Control的理解
网页的缓存是由HTTP消息头中的“Cache-control”来控制的,常见的取值有private、no-cache、max-age、must-revalidate等,默认为private。其作用根据不同的重新浏览方式分为以下几种情况:
(1) 打开新窗口
如果指定cache-control的值为private、no-cache、must-revalidate,那么打开新窗口访问时都会重新访问服务器。而如果指定了max-age值,那么在此值内的时间里就不会重新访问服务器,例如:
Cache-control: max-age=5
表示当访问此网页后的5秒内再次访问不会去服务器
(2) 在地址栏回车
如果值为private或must-revalidate(和网上说的不一样),则只有第一次访问时会访问服务器,以后就不再访问。如果值为no-cache,那么每次都会访问。如果值为max-age,则在过期之前不会重复访问。
(3) 按后退按扭
如果值为private、must-revalidate、max-age,则不会重访问,而如果为no-cache,则每次都重复访问
(4) 按刷新按扭
无论为何值,都会重复访问
项目中使用过滤器来设置网页的缓存
FilterConfig fc;
public
void
doFilter(ServletRequest req, ServletResponse res,
FilterChain chain)
throws
IOException, ServletException
{
HttpServletResponse response
=
(HttpServletResponse) res;
//
set the provided HTTP response parameters
for
(Enumeration e
=
fc.getInitParameterNames(); e.hasMoreElements();)
{
String headerName
=
(String) e.nextElement();
response.addHeader(headerName, fc.getInitParameter(headerName));
}
//
pass the request/response on
chain.doFilter(req, response);
}
配置文件的配置:
<
filter
>
<
filter-name
>
NoCache
</
filter-name
>
<
filter-class
>
filter.CacheFilter
</
filter-class
>
<
init-param
>
<
param-name
>
Cache-Control
</
param-name
>
<
param-value
>
no-cache, must-revalidate
</
param-value
>
</
init-param
>
</
filter
>
<
filter
>
<
filter-name
>
CacheForWeek
</
filter-name
>
<
filter-class
>
filter.CacheFilter
</
filter-class
>
<
init-param
>
<
param-name
>
Cache-Control
</
param-name
>
<
param-value
>
max-age=604800
</
param-value
>
</
init-param
>
</
filter
>
<
filter-mapping
>
<
filter-name
>
CacheForWeek
</
filter-name
>
<
url-pattern
>
*.js
</
url-pattern
>
</
filter-mapping
>
<
filter-mapping
>
<
filter-name
>
CacheForWeek
</
filter-name
>
<
url-pattern
>
*.css
</
url-pattern
>
</
filter-mapping
>
<
filter-mapping
>
<
filter-name
>
CacheForWeek
</
filter-name
>
<
url-pattern
>
*.gif
</
url-pattern
>
</
filter-mapping
>
上述设置保存了1周的缓存。
posted on 2008-12-30 16:49
ゞ沉默是金ゞ
阅读(10085)
评论(5)
编辑
收藏
所属分类:
Java SE
FeedBack:
#
fbm3g
2008-12-30 19:11 |
fbm3g
fbm3g 经典
回复
更多评论
#
re: HTTP/1.1 Cache-Control的理解
2008-12-31 08:49 |
r
好东西
回复
更多评论
#
re: HTTP/1.1 Cache-Control的理解
2008-12-31 09:18 |
ゞ沉默是金ゞ
@fbm3g
@r
感谢各位关注!
回复
更多评论
#
re: HTTP/1.1 Cache-Control的理解
2008-12-31 19:58 |
梦想在这里起飞
写得不错啊,看看我这个
开源的报表ireport项目web应用
http://ireport.cubebi.com
回复
更多评论
#
re: HTTP/1.1 Cache-Control的理解
2013-09-20 21:40 |
marmoglass
这是网页代码,还是IIS 代码
回复
更多评论
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
Chat2DB
C++博客
博问
管理
相关文章:
jvm学习笔记
ThreadPoolExecutor usage summary
Part 13: java.util.concurrent - Atomic Variables
Part 12: java.util.concurrent : SingleThreadPool Example
Part 11: java.util.concurrent - CachedThreadPool Example
Part 10: java.util.concurrent - ScheduledThreadPool Example
Part 9: java.util.concurrent : FixedThreadPool Example
Part 8: java.util.concurrent - "Executors" Factory Threads Pool
Part 7: java.util.concurrent - invokeAll via ExecutorService
Part 6: java.util.concurrent - Lock and Condition Object