2

如何强制在与 /webapp/ 目录中指定的路径不同的路径下提供静态资源(HTML、CSS、JS)?

假设我在 webapp 的以下路径中有一个资源:

/src/main/webapp/client/mypage.html

我希望客户能够从以下 URL 访问它:

/myapp-context/v1/client/mypage.html

我如何为这些资源指定一个公共根 URL(“v1”),我web.xml是否可以配置一个默认过滤器或静态资源 servlet 来启用此行为?或者,我可以为上下文根之外的整个应用程序指定一个基本 URL 吗?

4

2 回答 2

3

你看过课org.springframework.web.servlet.DispatcherServlet吗?

web.xml

<servlet>
 <servlet-name>dispatcher</servlet-name>
 <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
 <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
 <servlet-name>dispatcher</servlet-name>
 <url-pattern>/</url-pattern>
</servlet-mapping>

并且在dispatcher-servlet.xml

<mvc:resources mapping="/v1/client/*.html" location="/client/pages/" />
<mvc:resources mapping="/v1/client/*.js" location="/client/js/" />
<mvc:resources mapping="/v1/client/*.css" location="/client/css/" />

如果要使用base标签,请参阅相对路径

于 2013-07-02T21:56:05.830 回答
1

定义

<mvc:resources mapping="/v1/client/**" location="/client/" />

关于调度程序-servlet 配置。

谢谢!

于 2013-07-03T03:36:57.777 回答