JSP页面img图片缓存问题现象表述及问题解决
l 问题表述:
当对含有头像的客服人员信息进行修改(含对头像信息的修改)后,重新打开数据修改界面,发现文本内容修改成功,而头像内容仍然显示为原来的头像——数据库中的对应信息头像所在字段数据已经成功更新。
l 前提:
jsp页面中进行了页面缓存清除处理:
<meta http-equiv="pragma" content="no-cache"/>
<meta http-equiv="cache-control" content="no-cache"/>
<meta http-equiv="expires" content="0"/>
当然,下边3行代码功能与上边的3行功能相同,页面中仅写一份
<%
response.setHeader("Pragma","No-Cache");
response.setHeader("Cache-Control","No-Cache");
response.setDateHeader("Expires", 0);
%>
l 问题情景再现:
原jsp中img src写法:
<img src="<%=path%>/servlet/customer/personPic?cspId=${cspId}"></img>
要修改的数据界面:
修改数据后,再次进入此条数据的修改界面:
发现虽然其它文本字段都进行了相应修改,但是“头像”部分并没有修改为我们指定的图片(如下图,头像仍然显示为一个“叉”的形状)
查询数据库,发现数据库中的头像对应的blob字段中的数据已经更改为指定的图片。
l 问题解决(共两步):
(1)修改servlet:在进行数据读取的servlet中增加图片随机数代码
//图片随机数
double randomNum = Math.random();
request.setAttribute("randomNum", randomNum);
(2)更新前台数据修改jsp:图片显示img标签的src中增加“randomNum”参数
<img src="<%=path%>/servlet/customer/personPic?cspId=${cspId}&randomNum=${randomNum}"></img>
重新打开同一人员的数据修改界面——成功显示刚才更新过的图片!!
l 原理:
由于在img的src中增加了随机数参数,多次访问图片时,浏览器认为是访问了不同的图片路径(或者说是访问了不同的图片),浏览器会每次重新访问服务器读取图片,而不再读取缓存中的图片。
相关参考:
Jsp页面中关于客户端图片缓存的解决
http://damiao-cn.javaeye.com/blog/371216
JSP解决图片缓存问题
http://wuaner.javaeye.com/blog/395443
相关推荐
有关于jsp页面缓存的介绍及缓存的清除,缓存的解决办法有两种,一种是服务端方法,另一种是客户端方法
jsp 页面 部分数据 缓存,可以设置缓存的时间,可以大大提高页面的访问速度!
指令 Page 指令 Include 指令 JSP 页面元素
解决jsp页面乱码,页面信息配置,tomcat配置以及各种信息配置
HTML,JSP 页面缓存的解决方案 在弹出的模态窗口中如果有POSTBACK,则会打开新窗口,而且调试的时候,弹出的模态窗口默认是有缓存,很不方便。
如何解决JSP页面显示乱码问题
图片上传成功jsp页面不刷新,是因为浏览器缓存导致,需要在图片请求参数中添加随机参数
解决jsp页面的日期处理问题,日期处理是一个很好理解的问题,希望有所帮助
IE页面缓存问题,html,jsp及servlet中的设置
怎么解决JSP页面中文问题。。。。。。。。。。。。。。。。
web开发必备:JSP标准标签库JSP的语法介绍及jsp页面导入标签方法.docx
前言 JSP 页面间传递参数是项目中经常需要的,这应该算是 web 基本功吧。试着将各种方式总结下来,需要时可以进行权衡利弊选择最合适的方式。下面来一起看看详细的介绍: 1. URL 链接后追加参数 ...jsp:para
jsp开发中遇到的问题及解决方案,这是我开发J2EE项目中所总结的所有关于jsp初学者需要知道及解决的问题,欢迎下载,绝对物超所值!!!!
JSP页面缓存的简单实现 (可用于 content-type 为字符类型的JSP页面).zip
myeclipse2017 jsp页面 <c:if>在select里面写 导致后面代码不是彩色问题 一半黑一半彩色
提升JSP页面响应速度的七大秘籍绝招提升JSP页面响应速度的七大秘籍绝招提升JSP页面响应速度的七大秘籍绝招
jsp页面路径问题,request.getcontentType.;request.getscheme;request.getServerName
开发者突击:JSP网络开发经典模块实现全集
语言程序设计资料:JSP_12-(2)JSP页面元素.ppt
JSP 注册页面JSP 注册页面JSP 注册页面JSP 注册页面JSP 注册页面