<servlet>元素是配置Servlet所用的元素。
<servlet-mapping>元素在Servlet和URL樣式之間定義一個映射,即servlet類提供一個url,在地址欄輸入對應的映射路徑就可以訪問你的servlet。
下面給出一段配置代碼:
<servlet> <servlet-name>ServletName</servlet-name> <servlet-class>xxxpackage.xxxServlet</servlet-class> <!--Servlet的類--> <init-param> <!--初始化一個變量,可看成全局變量,可省略--> <param-name>參數名稱</param-name> <!--變量名稱--> <param-value>參數值</param-value> <!--變量值--> </init-param> </servlet> <servlet-mapping> <servlet-name>ServletName</servlet-name> <url-pattern>/aaa/xxx</url-pattern> <!--映射的url路徑 --> </servlet-mapping>
在地址欄中輸入http://localhost:8080/web-App/aaa/xxx就可以訪問了。
缺省Servlet
1.如果某個Servlet的映射路徑僅僅為一個正斜杠(/),那么這個Servlet就成為當前Web應用程序的缺省Servlet。
2.凡是在web.xml文件中找不到匹配的<servlet-mapping>元素的URL,它們的訪問請求都將交給缺省Servlet處理,也就是說,缺省Servlet用於處理所有其他Servlet都不處理的訪問請求。
3.在<tomcat的安裝目錄>\conf\web.xml文件中,注冊了一個名稱為org.apache.catalina.servlets.DefaultServlet的Servlet,並將這個Servlet設置為了缺省Servlet。
當訪問Tomcat服務器中的某個靜態HTML文件和圖片時,實際上是在訪問這個缺省Servlet。
例1--缺省Servlet:
<servlet> <servlet-name>action</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <!-- 通過初始化參數指定xml配置位置 --> <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/config/spring-mvc.xml</param-value> </init-param> </servlet> <servlet-mapping> <servlet-name>action</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping>
例2:
<servlet> <servlet-name>dispatcherServlet</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/config/spring-mvc.xml</param-value> </init-param> </servlet> <!-- 攔截所有以do結尾的請求 --> <servlet-mapping> <servlet-name>dispatcherServlet</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping>
待續..
