首頁常見問題正文

Servlet映射路徑中使用通配符

更新時間:2022-12-30 來源:黑馬程序員 瀏覽量:

IT培訓(xùn)班

  在實際開發(fā)過程中,開發(fā)者有時會希望某個目錄下的所有路徑都可以訪問同一個Servlet,這時,可以在Servlet映射的路徑中使用通配符*。通配符的格式有兩種,具體如下。

  ·格式為“*.擴展名”,例如*.do匹配以.do結(jié)尾的所有URL地址。

  ·格式為/*,例如/abc/*匹配以/abc開始的所有URL地址。

  需要注意的是,這兩種通配符的格式不能混合使用,例如,/abc/*.do是不合法的映射路徑。另外,當客戶端訪問一個Servlet時,如果請求的URL地址能夠匹配多條虛擬路徑,那么Tomcat將采取最具體匹配原則查找與請求URL最接近的虛擬映射路徑。例如,對于如下所示的一些映射關(guān)系:

/abc/*        映射到Servlet1
/*            映射到Servlet2
/abc          映射到Servlet3
*.do          映射到Servlet4

  ·當請求URL為/abc/a.html,/abc/*和/*都可以匹配這個URL,Tomcat會調(diào)用Servlet1。

  ·當請求URL為/abc、/*、*.do和/abc/*都可以匹配這個URL,Tomcat會調(diào)用Servlet3。

  ·當請求URL為/abc/a.do、/*、*.do和/abc/*都可以匹配這個URL,Tomcat會調(diào)用Servlet1。

  ·當請求URL為/a.do,/*和*.do都可以匹配這個URL,Tomcat會調(diào)用Servlet2。

  ·當請求URL為/xxx/yyy/a.do,*.do和/*都可以匹配這個URL,Tomcat會調(diào)用Servlet2。

分享到:
在線咨詢 我要報名
和我們在線交談!