解决页面绝对路径下的图片不显示问题

问题描述: 

我将图片保存到本地磁盘下,然后数据库中保存的是图片的绝对路径。
可是在jsp页面中显示的是图片的绝对路径,但不是图片,具体代码如下:
<img src="E:\Cache\Img_Cache\20171213091911.jpg"/>

原因分析 :

原来tomcat默认是在项目的根目录下去找图片,
<img src="http://localhost:8080/znkj/images/20171213091911.jpg"/>
而实际上图片并不保存在这个位置。

解决方法:

        

配置虚拟路径:
在tomcat的安装路径下打开conf/server.xml ,
在<Host></Host>中间添加如下代码:
<Context path="/Cache/Img_Cache/" docBase="E:\Cache\Img_Cache" reloadable="true">    </Context>

        
前端jsp代码如下:
<img src=" /Cache/Img_Cache/ 20171213091911.jsp">
这个时候启动tomcat,图片就能正常显示了。

注意: 
虚拟路径 /Cache/Img_Cache与上面配置的path要保持一致。
     一般来讲,图片上传不会和项目分开,将项目保存到本地磁盘的做法不建议使用,如果项目上线发布到服务器上是不存在分盘的,所以路径问题最后还是要修改。所以以上将图片保存在本地磁盘的做法不建议使用,最好还是保存在项目根目录下,不过这样做也有一点弊端,随着用户上传的文件的增多,项目所占的内存会一直增加。



猜你喜欢

转载自blog.csdn.net/qq_29410905/article/details/79675838