在/* 上映射全局前端控制器 servlet 时如何访问静态资源 [英] How to access static resources when mapping a global front controller servlet on /*

查看:21
本文介绍了在/* 上映射全局前端控制器 servlet 时如何访问静态资源的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已将 Spring MVC 调度程序映射为 /* 上的全局前端控制器 servlet.

I've mapped the Spring MVC dispatcher as a global front controller servlet on /*.

<servlet>       
  <servlet-name>home</servlet-name>         
  <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>     
</servlet>  
<servlet-mapping>       
  <servlet-name>home</servlet-name>         
  <url-pattern>/*</url-pattern>     
</servlet-mapping>

但是,此映射会阻止对 /res/ 文件夹中的静态文件(如 CSS、JS、图像等)的访问.

However, this mapping stops the access to static files like CSS, JS, images etc which are all in the /res/ folder.

我怎样才能访问它们?

推荐答案

我也遇到过这个问题,但从未找到好的解决方案.我最终将我的 servlet 映射到 URL 层次结构中更高的一层:

I've run into this also and never found a great solution. I ended up mapping my servlet one level higher in the URL hierarchy:

<servlet-mapping>       
  <servlet-name>home</servlet-name>             
  <url-pattern>/app/*</url-pattern>     
</servlet-mapping>

现在,您的容器可以提供基本上下文(以及您的/res 目录中)中的所有内容.

And now everything at the base context (and in your /res directory) can be served up by your container.

这篇关于在/* 上映射全局前端控制器 servlet 时如何访问静态资源的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆