簡單介紹
XML元素不僅是大小寫敏感的,而且它們還對出現在其他元素中的次序敏感。例如,XML頭必須是文件中的第一項,DOCTYPE聲明必須是第二項,而web-app元素必須是第三項。在web-app元素內,元素的次序也很重要。服務器不一定強制要求這種次序,但它們允許(實際上有些服務器就是這樣做的)完全拒絕執行含有次序不正確的元素的Web應用。這表示使用非標准元素次序的web.xml文件是不可移植的。
前提:要引入好包
xml配置中各節點的含義:
<!-- servlet的配置 --> <servlet> <!-- servlet的內部名稱,自定義。盡量有意義 --> <servlet-name>Book</servlet-name> <!-- servlet的類全名: 包名+簡單類名 --> <servlet-class>web.Bookservlet</servlet-class> </servlet> <!-- servlet的映射配置 --> <servlet-mapping> <!-- servlet的內部名稱,一定要和上面的內部名稱保持一致!! --> <servlet-name>Book</servlet-name> <!--訪問路徑 http://localhost:8080/Bookservlet--> <!--這里和@Webservlet路徑一個道理 --> <url-pattern>/Bookservlet</url-pattern> </servlet-mapping>
在配置Servlet時,有兩個地方需要配置,一個是<servlet>,另一個是<servlet-Mapping>,這兩個一個是配置Servlet,一個是配置其映射信息,其中<servlet>中的<servlet-name>可以隨意指定,但要有一定的意義,一般取為類的名稱,例如我的類名為Book,這里取名為ServletDemo,下面的<servlet-class>是類的全路徑,package+calssname,一定要是全路徑!
<servlet-Mapping>是映射信息,它也有一個<servlet-name>,里面的名字是對應的Servlet名,也就是我們上面配置的Servlet名字,這里是Book,下面的是映射路徑,也就是訪問Servlet的名稱,這里也是以方便和有意義為前提的,是我們在訪問Servlet在瀏覽器地址欄后面輸入的那個信息,例如我的映射路徑命名為/Bookservlet,在地址欄中輸入http://localhost:8080/Bookservlet
注意:這里的映射路徑一定不是丟掉/,否則就會出錯了,一定要寫成/servlet,不能是servlet
@Webservlet