spring mvc路徑匹配原則

在Spring MVC中經常要用到攔截器,在配置需要要攔截的路徑時經常用到<mvc:mapping/>子標籤,其有一個path屬性,它就是用來指定需要攔截的路徑的。例如:

<mvc:interceptor>
    <mvc:mapping path="/**" />
        <bean class="com.test.interceptor.TestInterceptor" />
</mvc:interceptor>


根據以上配置,此攔截器會攔截所有的請求。

Spring MVC中的路徑匹配要比標準的web.xml要靈活的多。默認的策略實現了 org.springframework.util.AntPathMatcher,就像名字提示的那樣,路徑模式是使用了Apache Ant的樣式路徑,Apache Ant樣式的路徑有三種通配符匹配方法(在下面的表格中列出)
這些可以組合出很多種靈活的路徑模式
Table Ant Wildcard Characters

WildcardDescription
?匹配任何單字符
*匹配0或者任意數量的字符
**匹配0或者更多的目錄

Table Example Ant-Style Path Patterns

PathDescription
/app/*.x匹配(Matches)所有在app路徑下的.x文件
/app/p?ttern匹配(Matches) /app/pattern 和 /app/pXttern,但是不包括/app/pttern
/**/example匹配(Matches) /app/example, /app/foo/example, 和 /example
/app/**/dir/file.匹配(Matches) /app/dir/file.jsp, /app/foo/dir/file.html,/app/foo/bar/dir/file.pdf, 和 /app/dir/file.java
/**/*.jsp匹配(Matches)任何的.jsp 文件


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章