程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA編程入門知識 >> JavaWeb編程 Servlet的基本配置

JavaWeb編程 Servlet的基本配置

編輯:JAVA編程入門知識

學習JavaWeb的人沒有不知道Servlet的吧,而要用Servlet就需要在web.xml中進行配置。相信有很多初學者跟我當初一樣,對於一些配置參數不是很理解。
下面是一個最基本的Servlet配置:
代碼如下:

<servlet> 
    <servlet-name>MyServlet</servlet-name> 
    <servlet-class>com.Servlet.MyServlet</servlet-class> 
</servlet> 

<servlet-mapping> 
    <servlet-name>MyServlet</servlet-name> 
    <url-pattern>/Servlet</url-pattern> 
</servlet-mapping> 

Servlet的配置包括兩部分:
1、<servlet>配置Servlet的名字和完整類路徑:
servlet-name是自定義的,就是給Servlet取個名字。
servlet-class是Servlet完整的類,就是從一開始的包一直“.”到該Servlet。
2、<servlet-mapping>是用來截獲請求的,包括servlet-name和url-pattern。
servlet-name跟<servlet>中的servlet-name是對應的,兩個servlet-name一定要一致,否則會找不到對應的Servlet。
url-pattern是截獲請求的規則,當表單提交的時候,會根據特定的規則調用相應的Servlet。下面會具體闡述。
url-pattern大致分為以下幾種方式:
1、完全匹配
 如:<url-pattern>/servlet/MyServlet.do</url-pattern>
2、目錄匹配
如:<url-pattern>/servlet/*</url-pattern>

3、擴展名匹配
如:<url-pattern>*.do</url-pattern>
在web.xml文件中,以下語法用於定義映射:

 l. 以”/'開頭和以”/*”結尾的是用來做路徑映射的。
2. 以前綴”*.”開頭的是用來做擴展映射的。
3. “/” 是用來定義default servlet映射的。
4. 剩下的都是用來定義詳細映射的。比如: /aa/bb/cc.action

容器查找規則:
1、容器會首先查找完全匹配,如果找不到,再查找目錄匹配,如果也找不到,就查找擴展名匹配。
2、如果一個請求匹配多個“目錄匹配”,容器會選擇最長的匹配。
例如:servletA的url-pattern為/test/*,而servletB的url-pattern為/test/b/*,此 時訪問http://localhost/test/b時,容器會選擇路徑最長的servlet來匹配,也就是這裡的servletB。
注意:”/*.action”這樣一個看起來很正常的匹配會錯。因為這個匹配即屬於路徑映射,也屬於擴展映射,會導致容器無法判斷。
上面講解的只是Servlet最基本的一個配置,還有很多其他的參數,有興趣可自行研究,這裡就不一一贅述了。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved