7 回答
TA贡献1827条经验 获得超9个赞
<mvc:resources location="/image/" mapping="/image/**"/>
<mvc:resources location="/css/" mapping="/css/**"/>
<mvc:resources location="/js/" mapping="/js/**"/>
可以这样子放行指定路径的资源,上面的模版
你的项目中这样子放行:
<mvc:resources location="/image/" mapping="/image/**"/>
TA贡献1772条经验 获得超8个赞
可以尝试用
<mvc:default-servlet-handler />
替代
<mvc:resources location="/,classpath:/META-INF/publicResources/" mapping="/resources/**"/>
TA贡献1786条经验 获得超11个赞
springmvc的设置中,/过滤了所有的请求,包括所有静态页面的后缀
解决方法1、改变你请求的拦截方法,例如以*.do,*.action 等等请求的才进行拦截,则filterMapping设置成*.do即可。
解决方法2、设置静态资源不拦截,可以选择在工程配置文件中设置<servlet-mapping> <servlet-name>default,<url-pattern>*.css,或者在springmvc的配置文件中设置 <mvc:resources location="/" mapping="/**/*.html"/>
TA贡献1785条经验 获得超4个赞
TA贡献1804条经验 获得超7个赞
审查一下元素,为什么找不到静态资源,是不是路径不对,先各种都调查一下。
另外建议写全路径:
<script src="${pageContext.request.contextPath}/static/js/jquery-3.1.0.min.js"></script>
TA贡献1744条经验 获得超4个赞
有2种方法,应该可以解决,你试试,前提都是将DispatcherServlet请求映射配置为"/"
1.采用<mvc:default-servlet-handler />
spring-mvc的配置中加<mvc:default-servlet-handler />
它会在Spring MVC上下文中定义一个org.springframework.web.servlet.resource.DefaultServletHttpRequestHandler,它会像一个检查员,对进入DispatcherServlet的URL进行筛查,如果发现是静态资源的请求,就将该请求转由Web应用服务器默认的Servlet处理,如果不是静态资源的请求,才由DispatcherServlet继续处理。
2.采用<mvc:resources />
spring-mvc的配置中加<mvc:resources />
由Spring MVC框架自己处理静态资源,并添加一些有用的附加值功能,允许静态资源放在任何地方并可指定静态资源在浏览器端的缓存时间,示例如:<mvc:resources location="/" mapping="/resources/**"/>即将Web根路径"/"映射到/resources路径
添加回答
举报