在我的Spring web-app中,我已将/app/*
映射到调度程序servlet。该场景中的最佳方法是什么,用于从调度员中分离images
,.js
,.css
等静态内容?
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>/app/*</url-pattern>
</servlet-mapping>
例如,当我打开网址:http://server/context/app/users
并且在users.jsp上有<img src="images/test.png"/>
时,我没有图片,因为http://server/conext/app/users/images/test.png
不是正确的网址。
现在我使用绝对路径,如:<img src="/context/images/test.png"/>
,但它会使JSP代码变得复杂并且搜索更好的东西。
答案 0 :(得分:6)
您可以使用<mvc:resources>
告诉DispatcherServlet
某些路径应作为静态资源处理。
请参阅section 15.12.4 of the Spring 3.0.x manual了解如何配置它。
答案 1 :(得分:2)
我使用此配置提供静态内容,如果没有为URL找到处理程序映射并且只提供URL,则默认设置为
。<mvc:default-servlet-handler/>