Представьте, что вы хотите, чтобы Spring MVC DispatcherServlet
обрабатывал все URL-адреса в вашем приложении, кроме URL-адресов статического содержимого.Если вы попытаетесь сделать это напрямую с <url-pattern>/</url-pattern>
, это сопоставление будет иметь приоритет над статическим содержимым.
С помощью фильтра перезаписи вы можете указать исключения для статического содержимого, например:
<urlrewrite default-match-type="wildcard">
<rule>
<from>/staticContentHere/**</from>
<to>/staticContentHere/$1</to>
</rule>
<rule>
<from>/**</from>
<to>/app/$1</to>
</rule>
</urlrewrite>
РЕДАКТИРОВАТЬ: Обратите внимание, что начиная с Spring 3.0.4 существует <mvc:resources />
декларация.С помощью этого объявления DispatcherServlet
будет обслуживать статический контент из подпапки /resources
вашего веб-приложения, поэтому перезапись не потребуется (см. http://blog.springsource.com/2010/07/22/spring-mvc-3-showcase/).