前面的文章已经分析如何将项目部署到自己的服务器上,这里我们对服务器上的项目可能遇到的问题进行解决.
1.图片资源访问不到的问题
图片资源不同于css, js等静态资源,可以直接放置在项目中,图片资源需要独立于项目以外,这就导致了在储存图片资源的时候,只是存储图片的相对路径,而不是绝对路径.因为如果储存的是绝对路径,一旦项目要从本地上传到服务器上,那么就需要重新修改数据库中的图片地址信息或者在服务器上重新构造数据库中的图片地址,无论是哪种都是比较麻烦的.但是如果储存的只是相对路径,我们就可以直接将相对路径下的文件打包上传到服务器,然后再修改对应的文件路径前缀,与数据库中的图片地址构成图片的绝对路径.
比如类似于这样的,在项目中储存的只是图片的相对路径
但是只有相对路径,项目又如何访问到图片资源呢?
换句话就是说,如何在项目访问相对路径的时候,在前面加上文件路径前缀,将相对路径补全成图片的绝对路径地址呢?
解决方案:
我们一般都是通过tomcat来启动和访问项目的,所以解决方法也是在tomcat上,
核心方法就是设置虚拟路径
虚拟路径的用作就是在访问虚拟路径的时候,自动给路径添加(这个取决于你将图片放置的目录)相应的文件前缀,
比如我将图片放置在
这个是绝对路径
F:\javaCode\OfferProduct\xioayuanshangpu\Image\win\upload\images\item\shop\15\
也就是15文件夹下