* @debug1:web项目内部直接访问系统资源目录(即磁盘文件),需要"file://"+本地磁盘绝对路径字符串
* @debug2:Not allowed to load local resource: file:///D:/ljx/test/eee.txt报错原因为谷歌浏览器禁止直接访问磁盘文件。
解决方法为给tomcat服务器的 server.xml配一个虚拟路径,tomcat本身会把这个虚拟路径解析为本地磁盘路径,这样既解决了访问不了图片的问题,有保证了浏览器只能访问指定文件夹。
解决方案1、jsp页面显示 项目外部资源(如:本地图片),server.xml配置 虚拟路径网页链接
解决方案2、封装配置工具,相当于server.xml文件中,配置虚拟路径
package com.ljx.sj.util;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
/**
*
* ****************************************************
*
* @Description: TODO(封装配置工具,相当于server.xml文件中,配置虚拟路径)
*
* ****************************************************
*/
@Configuration
public abstract class ConfigServerUtil implements WebMvcConfigurer {
/**
*
* @Description: TODO(eclipse内置tomcat服务器的server.xml,下载tomcat服务器的server.xml通用。相当于server.xml文件中,配置虚拟路径)
* @param registry
* @Reamrk:ResourceLocations("....")为你选择的系统资源目录,需要在目录前加file:
*/
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/myvirtual/file2/**").addResourceLocations("file:D:/ljx/test/");
}
}
貌似是不行的,只有在webroot下才行。
不能把图片拷到项目里面吗?
实在不行就用上传方式吧。