1. 程式人生 > >web.xml中url-pattern /和/*之間的區別

web.xml中url-pattern /和/*之間的區別

在寫springMVC小例子的時候遇到了攔截的問題,在url-pattern中引數的兩種方式

一、

  <servlet-mapping>
  	<servlet-name>springMVC</servlet-name>
  	<url-pattern>/</url-pattern>
  </servlet-mapping>

二、
  <filter-mapping>
	  <filter-name>encodingFilter</filter-name>
	  <url-pattern>/*</url-pattern>
  </filter-mapping>
前一種< url-pattern > / </ url-pattern > 不會攔截*.jsp,也就不會進入spring的DispatcherServlet類。後一種< url-pattern > /* </ url-pattern >會攔截,就是說所有的這個專案的請求都會被捕捉,過濾,同是為避免靜態資源被攔截需要在spring.xml檔案中配置<mvc:resources location="/images/" mapping="/images/**"/>。

stackoverflow上有一篇關於這個問題的文章,參考