img标签的 src属性,一般都是图片的路径。不过src也可以这样使用:
<img src="${contextPath}/album/image.do?r=2&id=${imgId}">
这时当页面加载图片时,会调用后台的方法去生成图片。后台的方法必须要输出一个图片。
String path = getPathById(imgId); // 得到图片路径
File file = new File(path);
....
response.setHeader("Pragma", "No-cache");
response.setHeader("Cache-Control", "no-cache");
response.setDateHeader("Expires", 0L);
response.setHeader("Content-Length", file.length() + "");
InputStream in = new FileInputStream(file);
OutputStream out = response.getOutputStream();
...// 从in读,写到out里
这样就可以动态的加载图片了。
现在知道这其实并不特殊,我们正常的使用img的src的图片路径是在服务器可以读取的地方,如使用tomcat的话,图片如存在web-inf父目录下,tomcat会自动帮我们读取图片写入到response的输出流中。但是如果图片存在其他地方,tomcat无法找到,那就需要我们在程序中自己去读取图片写入输出流,如上面所示。
在输出图片时可以设置response的header中Cache-Control、dateheader的Expires来控制图片的缓存,可以避免每次加载图片都要做读取,写入输出流的操作。提高性能。关于Cache-Control和Expires的设置可参考下面的链接:
http://tongjian.iteye.com/blog/234715
http://www.cnblogs.com/cuixiping/archive/2008/05/04/1181056.html
设置图片缓存后,会导致图片更新后仍然显示缓存图片的问题,这种情况可为图片添加一个版本号,将版本号写入img的src属性里,这样图片变化后img的src地址就会变化,浏览器会重新加载图片,保证图片及时得到更新。
分享到:
相关推荐
正如标题所言,如何调用js的函数或者js变量来指定图片路径,此种需求特别适合在某些特殊的情况下,这里有几个方法,在实验中,需要的朋友可以参考下
改变图片IMG的链接地址在某些特殊情况下实现特殊的功能还是比较不错的,下面为大家详细介绍下使用jquery改变图片IMG的链接地址,感兴趣的朋友可以参考下哈
更特殊类来专门处理除数为零的异常。在DivideByZeroException()中调用super()(专门初始化传如参数的方法)来传如异常处理后对象描述(初始状态)<BR>2、 第一步,创建一个Applet类完成完成两数相除的计算<BR>3...
这里简单说一下使用方法和注意事项: 1. 把 iepngfix.htc 和 blank.gif 复制到网站相应的目录下(目录由自己决定) ...[endif]-->注意两个特殊的语法: gt: 大于 lte: 小于或等于 !IE 感叹号的使用
String[] infos = {"<img src='1' >", "<img src='1' >", "<img src='1' >", "<img src='1' >", "<img src='1' >"}; tool.setPageInfo(infos);//设定分页的显示,默认为{"页次", "首页", "上一页", "下一页", "尾...
<br> Purple Parrot NumberBox ActiveX控件的界面: <br> <img src=DownloadFiles ime_activeximagesparrot_numberbox.jpg> <br> Purple Parrot NumberBox ActiveX控件的系统需求: Win9X/2000/ME/NT4/...
流程测试用例src=...测试用例软件测试中的前期测试用例编写规范和流程测试用例(TestCase)是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个程序路径 测试用例src=...
遮罩效果: 二、JQuery遮罩UI实现 <link href="style/showLoading.css" rel="stylesheet" type="text/css" /> <script type="text/javascript" src="js/jquery.showLoading.min.js"></script> 三、使用方法 假设...
<img class="point" src="imgs/img1.png"/> <img class="point" src="imgs/img2.png"/> <img class="point" src="imgs/img3.png"/> <img class="point" src="imgs/img4.png"/> <img class="point" src="imgs/img...
对于前端人员来说,图片处理...针对这种问题,这里我推荐使用图片转base64格式,再发给后端,后端只需将转码结果存入数据库即可,前端调用接口直接获取到base64数据直接写入img src 标签即可 下面使用element ui upload
适合刚刚进入(JavaScript,Vue)编程领域的小白使用
在HTML页面中一些特殊符号是不能直接使用,需要使用实体来代替这些特殊符号 实体也可以称为转义字符 实体的语法 &实体名; 常用的实体 空格 < < > > 版权符号 © 图片...
基于BBSXP5.16版本美化而成的无插件圣诞特别版。 保留依爽社区V2.0的所有具备特有的功能....特别说明:修改密码后删除mm.asp <img src=http://www.51one.net/softimg/2005121595267.gif border=0>
此次发布的是Discuz! 4.0.0开源版本,除了API目录下一些合作的接口,出于... <br><img border="0" alt="中国论坛网推荐" src="http://www.51one.net/bbsshow/images/discuz.gif" width="126" height="96">
此次发布的是Discuz! 4.0.0开源版本,除了API目录下一些合作的接口,出于对... <br> <br><img border="0" alt="中国论坛网推荐" src="http://www.51one.net/bbsshow/images/discuz.gif" width="126" height="96">
3.制作的安装盘可以不生成反安装信息,可以应用与制作软件升级包、数据库安装盘等一些特殊的安装盘。 4.注册表设置功能可以方便地设置在安装过程中对注册表的操作,如:设置注册表信息、读出注册表信息、删除注册表...
GIS门户 是基于Web的可视化和分析工具,用于检查可通过Web Map ...Javascript来源: src / Javascript库: html / js-libs / 我们CSS: src / css /我们的图片: html / img / HTML: src / index.html和src / temp
先将图片的src设置为同一张图片或者不设置,同时给img标签设置一个特殊属性,例如:data-src用于存放图片的真实预览地址;若图片未进入可视区域时,展示同一张图片或者直接不展示图片,此时就不会发生http请求,当...
6k 论坛 v6.0 简体中文版 <br> 新增功能及特点: 数据库采用分表结构,在... 论坛留言管理功能,可方便的对用户的论坛短消息进行管理 <br><img src=http://www.51one.net/bbsmuoban/6k-5/6k.gif border=0>