主頁 > 知識庫 > jsp web.xml文件的作用及基本配置

jsp web.xml文件的作用及基本配置

熱門標(biāo)簽:湖北地圖標(biāo)注公司 地圖標(biāo)注專業(yè)和非專業(yè) 甘肅銷售電銷機(jī)器人公司 智能電話機(jī)器人銷售話術(shù) 汝南縣地圖標(biāo)注app 四川正規(guī)外呼系統(tǒng)軟件 山東ai外呼電銷機(jī)器人好用嗎 外呼直播語音系統(tǒng) 福建電銷貓機(jī)器人收費
一個web中完全可以沒有web.xml文件,也就是說,web.xml文件并不是web工程必須的。

那什么時候需要,什么時候可以不需要呢?
要想回答上面的問題,得先了解web.xml文件使用來干什么的。web.xml文件是用來配置:歡迎頁、servlet、filter等的。當(dāng)你的web工程沒用到這些時,你可以不用web.xml文件來配置你的web工程。
那么web.xml能做的所有事情都有那些?
其實,web.xml的模式(Schema)文件中定義了多少種標(biāo)簽元素,web.xml中就可以出現(xiàn)它的模式文件所定義的標(biāo)簽元素,它就能擁有定義出來的那些功能。web.xml的模式文件是由Sun公司定義的,每個web.xml文件的根元素web-app>中,都必須標(biāo)明這個web.xml使用的是哪個模式文件。如:
?xml version="1.0" encoding="UTF-8"?>
web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
/web-app>
而且web.xml的模式文件中定義的標(biāo)簽并不是定死的,模式文件也是可以改變的,一般來說,隨著web.mxl模式文件的版本升級,里面定義的功能會越來越復(fù)雜,也即標(biāo)簽元素的種類會越來越多,但有些是不常用的,我們只需記住一些常用的就可以了。

下面列出web.xml常用的標(biāo)簽元素及這些標(biāo)簽元素的功能:
1、指定歡迎頁面,例如:
welcome-file-list>
welcome-file-list>
welcome-file>index.jsp/welcome-file>
welcome-file>index1.jsp/welcome-file>
/welcome-file-list>
上面的例子指定了2個歡迎頁面,顯示時按順序從第一個找起,如果第一個存在,就顯示第一個,后面的不起作用。如果第一個不存在,就找第二個,以此類推。
關(guān)于歡迎頁面:
訪問一個網(wǎng)站時,默認(rèn)看到的第一個頁面就叫歡迎頁,一般情況下是由首頁來充當(dāng)歡迎頁的。一般情況下,我們會在web.xml中指定歡迎頁。但web.xml并不是一個Web的必要文件,沒有web.xml,網(wǎng)站仍然是可以正常工作的。只不過網(wǎng)站的功能復(fù)雜起來后,web.xml的確有非常大用處,所以,默認(rèn)創(chuàng)建的動態(tài)web工程在WEB-INF文件夾下面都有一個web.xml文件。
對于tomcat來說,當(dāng)你只指定一個web的根名,沒有指定具體頁面,去訪問時一個web時, 如果web.xml文件中配置了歡迎頁,那么就返回指定的那個頁面作為歡迎頁,而在文中沒有web.xml文件,或雖然有web.xml,但web.xml也沒指定歡迎頁的情況下,它默認(rèn)先查找index.html文件,如果找到了,就把index.html作為歡迎頁還回給瀏覽器。如果沒找到index.html,tomcat就去找index.jsp。找到index.jsp就把它作為歡迎頁面返回。而如果index.html和index.jsp都沒找到,又沒有用web.xml文件指定歡迎頁面,那此時tomcat就不知道該返回哪個文件了,它就顯示The requested resource (/XXX) is not available的頁面。其中XXX表示web的根名。但如果你指定了具體頁面,是可以正常訪問的。
2、命名與定制URL。我們可以為Servlet和JSP文件命名并定制URL,其中定制URL是依賴一命名的,命名必須在定制URL前。下面拿serlet來舉例:
(1)、為Servlet命名:
servlet>
servlet-name>servlet1/servlet-name>
servlet-class>net.test.TestServlet/servlet-class>
/servlet>
(2)、為Servlet定制URL、
servlet-mapping>
servlet-name>servlet1/servlet-name>
url-pattern>*.do/url-pattern>
/servlet-mapping>

3、定制初始化參數(shù):可以定制servlet、JSP、Context的初始化參數(shù),然后可以再servlet、JSP、Context中獲取這些參數(shù)值。下面哪servlet來舉例:
servlet>
servlet-name>servlet1/servlet-name>
servlet-class>net.test.TestServlet/servlet-class>
init-param>
param-name>userName/param-name>
param-value>Tommy/param-value>
/init-param>
init-param>
param-name>E-mail/param-name>
param-value>Tommy@163.com/param-value>
/init-param>
/servlet>
經(jīng)過上面的配置,在servlet中能夠調(diào)用getServletConfig().getInitParameter("param1")獲得參數(shù)名對應(yīng)的值。
4、指定錯誤處理頁面,可以通過“異常類型”或“錯誤碼”來指定錯誤處理頁面。
error-page>
error-code>404/error-code>
location>/error404.jsp/location>
/error-page>
-----------------------------
error-page>
exception-type>java.lang.Exceptionexception-type>
location>/exception.jsplocation>
/error-page>
5、設(shè)置過濾器:比如設(shè)置一個編碼過濾器,過濾所有資源
filter>
filter-name>XXXCharaSetFilter/filter-name>
filter-class>net.test.CharSetFilter/filter-class>
/filter>
filter-mapping>
filter-name>XXXCharaSetFilter/filter-name>
url-pattern>/*/url-pattern>
/filter-mapping>
6、設(shè)置監(jiān)聽器:
listener>
listener-class>net.test.XXXLisenet/listener-class>
/listener>
7、設(shè)置會話(Session)過期時間,其中時間以分鐘為單位,假如設(shè)置60分鐘超時:
session-config>
session-timeout>60/session-timeout>
/session-config>
除了這些標(biāo)簽元素之外,還可以往web.xml中添加那些標(biāo)簽元素呢,那些標(biāo)簽元素都能起什么作用呢?我們只要去查看web.xml的模式文件就能知道。直接看模式文件看不懂,可以找一些中文教程來看看。
您可能感興趣的文章:
  • Spring MVC的web.xml配置詳解
  • 淺談JavaWeb中的web.xml配置部署描述符文件
  • ssm框架下web項目,web.xml配置文件的作用(詳解)

標(biāo)簽:昌都 臨沂 白銀 南充 黔東 吳忠 肇慶 梅州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《jsp web.xml文件的作用及基本配置》,本文關(guān)鍵詞  jsp,web.xml,文件,的,作用,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《jsp web.xml文件的作用及基本配置》相關(guān)的同類信息!
  • 本頁收集關(guān)于jsp web.xml文件的作用及基本配置的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章