Windows系统下,使用idea开发项目时,遇到了一个问题!
问题:将数据库中存储的图片查询出来,并在前端进行展示,但显示失败!!
这是图片在本地磁盘中的存储地址
这是数据库中存储的图片地址(相对地址)
(某些教程中提到,如果是在Windows系统下,路径分隔符应使用反斜杠\
,如果是Linux系统,则使用斜杠/
。但我发现在Windows系统中,使用正斜杠/
作为路径分隔符也是可以的),不知道正斜杠/
是不是对Windows和Linux都适用,希望哪位大神能指点一二!
配置虚拟路径前,测试,报404,即根据相对路径找不到图片,前端读取路径时必须通过全限定名读取!
1)手动在Tomcat的service.xml中设置虚拟路径
1、进入tomcat安装目录的config文件夹下,找到service.xml文件,用notepad++ 或 记事本打开
2、在<Host>标签内添加 <Context path="/upload" docBase=“D:\idea\java_workspace\image\upload” reloadable=“true”/>
意思是:当读取到\upload时,就会自动将/upload解析成D:\idea\java_workspace\image\upload,这样就可以根据数据库中的相对路径来拼接处绝对路径读取到图片
(注意,path属性中的分隔符一定是斜杠”/”,不管是在Windows还是Linux系统)
3、打开Edit Configurations…面板,勾选Deploy applications configured in Tomcat instace选项
4、重启tomcat服务器(注意:别忘了这一步,否则无效果)
5、浏览器中输入图片地址,成功显示!
2)直接在IDEA中设置虚拟路径
1、打开Edit Configurations…面板,勾选Deploy applications configured in Tomcat instace选项
(很多教程里都有这一步,但我亲测过,不勾选Deploy applications configured in Tomcat instace选项也可以)
2、指定虚拟路径
3、设置当返回的相对值路径包含/upload时,就会自动将/upload解析成D:\idea\java_workspace\image\upload
4、重启tomcat服务器(注意:别忘了这一步,否则无效果)
5、浏览器中输入图片地址,成功显示!