欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

JSP:解决html页面不能显示绝对路径图片问题,以及图片保存到项目webroot文件夹下面不能及时刷新显示问题

程序员文章站 2022-07-10 19:15:28
...

一、解决html页面不能显示绝对路径图片问题

我在upload_servlet.java里将图片保存到了项目所在本地磁盘的位置:

SmartUpload myUpload=new SmartUpload();
myUpload.initialize(config, request, response);
myUpload.upload();
File file=myUpload.getFiles().getFile(0);//导入com.jspsmart.upload包
file.saveAs("E://eclipse-workspace/DrugShop/WebContent/img/drug_img/"+drug_id+".jpg");

(这里的drug_id是我自己定义的一个变量,为了使图片名字不重复)

我在jsp页面想显示本地磁盘的图片:

  1. 找到本地Tomcat,打开server.xml

JSP:解决html页面不能显示绝对路径图片问题,以及图片保存到项目webroot文件夹下面不能及时刷新显示问题

  1. 找到自己项目所在标签(黄色标记是我的项目名)
    JSP:解决html页面不能显示绝对路径图片问题,以及图片保存到项目webroot文件夹下面不能及时刷新显示问题
  2. 在host内部添加如下代码:
<Context path="/upload" docBase="E:\eclipse-workspace\DrugShop\WebContent\img\drug_img\"  reloadable="true"></Context> 

(注意看docBase的值,这个路径就是我存放图片的路径。
然后把这个路径取了个别名,叫/upload,赋值给path)
JSP:解决html页面不能显示绝对路径图片问题,以及图片保存到项目webroot文件夹下面不能及时刷新显示问题

  1. 接下来在img标签中获取图片路径
<img src="/upload/1.jpg"/>

这样就能成功显示绝对路径为E:\eclipse-workspace\DrugShop\WebContent\img\drug_img\下面的这些图片

图片不能及时刷新显示问题:

  1. 创建一个随机数对象a
Random a = new Random();
// out.print(a.nextInt(100));//若要生成1-100的随机数则改为a.nextInt(100)+1即可

  1. 在img标签src属性后面传一个变量r,让其等于随机数,这样每次页面的r都不一样啦,相当于自动刷新页面了
<img src="/upload/1.jpg?r=<%=a.nextInt(100) %>" />
相关标签: JSP