2 fucktree fucktree 于 2016.05.03 15:20 提问

tomcat的部署路径,重新发布后上传到里面的图片会被清空

1struts2+xwork2
2eclipse里,部署项目时,部署路径选择的是默认的wtpwebapps
3action取的是绝对路径,并且图片可以顺利存储在部署的这个文件夹里
4在数据库中存的是相对路径,因为浏览器用img src输出时好像不能直接输出绝对路径
5疑惑就是,上传文件只能向tomcat服务器上传,因为我只能往数据库存相对路径,绝对路径src显示不出来,但是tomcat一重新发布,那些图片又都清空了,求解决方案

3个回答

w172087242
w172087242   Ds   Rxr 2016.05.03 16:02
已采纳

如果你的是windows,那么可以修改配置文件
在tomcat/conf/server.xml文件中的<Host>标签中加上
<Context path="/images" docBase="E:/images" debug="0" reloadable="false"/>

这时候如果你E盘下的images文件夹中有个图片是1.jpg;
那么启动tomcat后在地址栏输入:
http://localhost:8080/images/1.jpg就能访问到了,这样图片就可以与服务分离了。

w172087242
w172087242 如果有帮助的话,希望能结帖
一年多之前 回复
w172087242
w172087242   Ds   Rxr 2016.05.03 15:51

方法有很多种:
1.软链接方式
2.自定义下载
3.走专门的图片服务器

w172087242
w172087242 回复fucktree: 你的不是windows操作系统吧,如果不是则在linux下敲:ln -s /home/tomcat/images /home/tomcat/
一年多之前 回复
w172087242
w172087242 回复fucktree: 或者是修改一下tomcat的配置,把图片放到它能读的地方去
一年多之前 回复
fucktree
fucktree 软链接怎么弄呢?
一年多之前 回复
w172087242
w172087242 回复fucktree: 软链接
一年多之前 回复
fucktree
fucktree 人家就是一个普通的毕设的啦,哪个方案更简单一些呢
一年多之前 回复
w172087242
w172087242 我的项目中图片都是多台服务器共享的
一年多之前 回复
a80937784
a80937784   2016.05.03 16:05

往数据库中存放相对路径,可以将相对路径做下处理 变为绝对路径,解析时 做同样的处理 读取

fucktree
fucktree 原来我看同学存到数据库里是这样的 d://tomcat6.0/wabapps/demo/images/a.jpg 然后jsp中 <img src="<s:property="imagepath">"> 但是输出不了,浏览器中f12路径虽然显示的是 <img src="d://tomcat6.0/wabapps/demo/images/a.jpg">,但是图片显示不了,报错说 not allowed local file 后来,我把数据库里的内容改成了 ./images/a.jpg 就能输出了。。。 所以我怕不上传到tomcat下,改到本地路径后,数据库也存绝对路径,到时候还是取不到
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!