关于springmvc静态资源路径问题

web.xml配置,servlet-mapping的url-pattern设置成“/”,/就是指拦截所有的url,但不包括.jsp、.html、.js这样的文件。

因为根目录webapp下的所有静态资源在web.xml中设置了/导致被过滤,所以在springmvc的配置文件中进行配置,将这些静态资源交由dispatchservlet去处理,选择需要被放行的资源文件,springmvc进行配置:

<mvc:default-servlet-handler/>是放行所有的静态资源文件,当然也可以用<mvc:resources location="" mapping=""></mvc:resources>这个标签进行设置选择性放行,location是指指定不要拦截的目录,mapping是指指定文件。

注意:在jsp页面引用时候,如果静态文件在webapp下而jsp页面在WEBINF下,那么jsp需要引用webapp下的静态资源时,路径需要用../,而不是./,如下图:

这样设置的话,我们就可以实现在WEBINF下的jsp页面引用根目录webapp下的静态资源。

e

原文地址:https://www.cnblogs.com/ahsh/p/12024955.html

时间: 2024-08-29 15:38:29

关于springmvc静态资源路径问题的相关文章

用node.js express设置路径后 子路径下的页面访问静态资源路径出问题

在routes/news_mian.js 设置了访问news_main.html 的路径 '/',通知设置一个访问news-page.html的子路径'/newspage'子路径.但是在访问loaclhost:3000/news/newspage时静态资源路径前多了一个/news导致不能找到静态资源 app.js var express=require('express'); var app=express(); var path=require('path'); var http=requir

springmvc 静态资源访问的问题

<mvc:resources mapping="/images/**" location="/images/" cache-period="31556926"/> <mvc:resources mapping="/js/**" location="/js/" cache-period="31556926"/> <mvc:resources mapping=&

Spring boot 默认静态资源路径与手动配置访问路径的方法

这篇文章主要介绍了Spring boot 默认静态资源路径与手动配置访问路径的方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下 在application.propertis中配置 ##端口号 server.port=8081 ##默认前缀 spring.mvc.view.prefix=/ ## 响应页面默认后缀 spring.mvc.view.suffix=.html # 默认值为 /** spring.mvc.static-path-pattern=/** # 这里设置要指向的路径,多个

SpringMVC静态资源处理[转]

SpringMvc配置DispatchServlet对所有请求进行过滤: <servlet> <servlet-name>mvc-dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>1</load-on-startup> <

springMvc静态资源拦截问题

测试的时候发现:如果直接访问web项目的html等静态资源,不能访问 原因如下: 当web.xml中url-pattern配置为"/"时,会导致系统中的静态资源被拦截 如何解决: 1)修改url-pattern    2)进行静态资源映射     3)开放tomcat的defaultServlet 我测试了解决方案2和3,做了如下的配置: web.xml: <!-- springmvc核心 --> <servlet> <servlet-name>sp

springmvc 静态资源 配置

SpringMVC提供<mvc:resources>来设置静态资源,但是增加该设置如果采用通配符的方式增加拦截器的话仍然会被拦截器拦截,可采用如下方案进行解决: 方案一.拦截器中增加针对静态资源不进行过滤(涉及spring-mvc.xml) 1 <mvc:resources location="/" mapping="/**/*.js"/> 2 <mvc:resources location="/" mapping=

SpringMVC静态资源拦截的问题

通常在web.xml中的核心控制器的DispatcherServlet中的url-pattern属性配置成类似“/”的拦截路径,但是会出现静态资源找不到的问题,比如js脚本.图片.css等无法加载,那么我们就需要进行一定的处理了: 1.配置web.xml 既然是web.xml搞得事,自然它本身就能处理,加入下面的节点即可 1 <servlet-mapping> 2 <servlet-name>springmvc</servlet-name> 3 <url-patt

SpringMVC - 静态资源放行

什么是静态资源? css.js.图片.html等都是静态资源 放行静态资源 1.不使用 springmvc 框架分析 不使用 springmvc 框架,这些静态资源请求都会由 tomcat 的默认的 default 进行处理. 2.使用了 springmvc 框架分析 当配置的 DispatcherServlet 的映射路径不为 / 时,对静态资源的请求最终会由 tomcat 的默认配置来处理,所以不影响静态资源的正常访问. 如果配置的 DispatcherServlet 的映射路径为 / 时,

springboot项目图片上传,回显;使用外部静态资源路径回显图片

//前端图片是Base64字符串形式传递图片参数:需要用Base解密,写入到本地磁盘中 public String upload(String string){ 解析图片(Base64): response.setHeader("Access-Control-Allow-Origin","*"); // 第二个参数填写允许跨域的域名称,不建议直接写 "*" response.setHeader("Access-Control-Allow