Web應(yīng)用的根目錄下,必須有一個(gè)WEB-INF目錄杂腰,WEB-INF目錄下有一個(gè)web.xml竹挡,同時(shí)還可以有classes和lib目錄
web.xml is not necessary if no servlet is needed
classes目錄存放Web應(yīng)用需要的class文件
lib目錄存放Web應(yīng)用需要的其他類(lèi)庫(kù)
JSP文件和其他資源文件放在當(dāng)前Web應(yīng)用根目錄及其子目錄下
WEB-INF目錄是用戶無(wú)法訪問(wèn)的目錄
-
web.xml中的所有元素出現(xiàn)的先后順序和次數(shù)等規(guī)則都寫(xiě)在XML Schema文件中
web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app 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" version="2.5"> </web-app>
-
web.xml中各個(gè)標(biāo)記的出現(xiàn)順序
(1) <web-app>
根元素
(2) <context-param>
Servlet中的ServletContext對(duì)象讀取的初始參數(shù) 以及 JSP中的application內(nèi)置對(duì)象讀取的初始參數(shù)
(3) <filter>
過(guò)濾器
(4) <filter-mapping>
過(guò)濾器需要過(guò)濾的資源,下設(shè)的元素 <url-pattern>的數(shù)目不受限制骂删,可以使用*通配符
(5) <listener>
監(jiān)聽(tīng)器
(6) <servlet>
配置Servlet儒老,下設(shè)的元素<load-on-startup>load-on-startup元素標(biāo)記容器是否在啟動(dòng)的時(shí)候就加載這個(gè)servlet(實(shí)例化并調(diào)用其init()方法);它的值必須是一個(gè)整數(shù)蝴乔,表示servlet應(yīng)該被載入的順序;當(dāng)值為0或者大于0時(shí),表示容器在應(yīng)用啟動(dòng)時(shí)就加載并初始化這個(gè)servlet驮樊;當(dāng)值小于0或者沒(méi)有指定時(shí)淘这,則表示容器在該servlet被選擇時(shí)才會(huì)去加載;正數(shù)的值越小剥扣,該servlet的優(yōu)先級(jí)越高,應(yīng)用啟動(dòng)時(shí)就越先加載;當(dāng)值相同時(shí)铝穷,容器就會(huì)自己選擇順序來(lái)加載钠怯。
(7) <servlet-mapping>
配置Servlet訪問(wèn)路徑
(8) <session-config>
配置 session, cookie等的相關(guān)信息
(9) <mime-mapping>
mime類(lèi)型映射到擴(kuò)展名, 用于規(guī)定下載格式
示例
<mime-mapping> <extension>doc</extension> <mime-type>application/msword</mime-type> </mime-mapping> <mime-mapping> <extension>xls</extension> <mime-type>application/msexcel</mime-type> </mime-mapping> <mime-mapping> <extension>pdf</extension> <mime-type>application/pdf</mime-type> </mime-mapping> <mime-mapping> <extension>zip</extension> <mime-type>application/zip</mime-type> </mime-mapping> <mime-mapping> <extension>rar</extension> <mime-type>application/rar</mime-type> </mime-mapping> <mime-mapping> <extension>txt</extension> <mime-type>application/txt</mime-type> </mime-mapping> <mime-mapping> <extension>chm</extension> <mime-type>application/mshelp</mime-type> </mime-mapping> <mime-mapping> <extension>mp3</extension> <mime-type>audio/x-mpeg</mime-type> </mime-mapping>
(10) <welcome-file-list>
設(shè)置 "/" 的URL時(shí)的默認(rèn)訪問(wèn)文件,可以指定多個(gè)歡迎文件曙聂,調(diào)用時(shí)按順序查找
示例
<welcome-file-list> <welcome-file>index.jsp</welcome-file> <welcome-file>/html/user.html</welcome-file> </welcome-file-list>
(11) <error-page>
定制錯(cuò)誤頁(yè)面晦炊。根據(jù)錯(cuò)誤碼選擇出現(xiàn)錯(cuò)誤時(shí)的跳轉(zhuǎn)文件。<exception-type>可以捕捉未設(shè)置錯(cuò)誤碼的跳轉(zhuǎn)文件
示例
<error-page> <error-code>404</error-code> <location>/error404.html</location> </error-page> <error-page> <exception-type>java.io.IOException</exception-type> <location>/errorIO.html</location> </error-page>
-
Web應(yīng)用的初始化順序
(1) 對(duì) <listener>元素聲明的監(jiān)聽(tīng)器實(shí)例化
(2) 調(diào)用實(shí)現(xiàn)了ServletContextListener接口的監(jiān)聽(tīng)器(可能不止一個(gè))的contextInitialized()方法
(3) 實(shí)例化 <filter> 元素聲明的過(guò)濾器
(4) 調(diào)用過(guò)濾器的 init() 方法
(5) 如果 <servlet>使用了 <load-on-startup>元素宁脊,則按照數(shù)值從小到大的順序?qū)ervlet進(jìn)行實(shí)例化断国,并調(diào)用對(duì)應(yīng)的init() 方法
Web應(yīng)用與web.xml
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
- 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)躏筏,“玉大人板丽,你說(shuō)我怎么就攤上這事〕媚幔” “怎么了埃碱?”我有些...
- 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)酥泞。 經(jīng)常有香客問(wèn)我乃正,道長(zhǎng),這世上最難降的妖魔是什么婶博? 我笑而不...
- 正文 為了忘掉前任,我火速辦了婚禮荧飞,結(jié)果婚禮上凡人,老公的妹妹穿的比我還像新娘。我一直安慰自己叹阔,他們只是感情好挠轴,可當(dāng)我...
- 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著耳幢,像睡著了一般岸晦。 火紅的嫁衣襯著肌膚如雪欧啤。 梳的紋絲不亂的頭發(fā)上,一...
- 那天启上,我揣著相機(jī)與錄音邢隧,去河邊找鬼。 笑死冈在,一個(gè)胖子當(dāng)著我的面吹牛倒慧,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播包券,決...
- 文/蒼蘭香墨 我猛地睜開(kāi)眼纫谅,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了溅固?” 一聲冷哼從身側(cè)響起付秕,我...
- 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎侍郭,沒(méi)想到半個(gè)月后询吴,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
- 正文 獨(dú)居荒郊野嶺守林人離奇死亡励幼,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
- 正文 我和宋清朗相戀三年汰寓,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片苹粟。...
- 正文 年R本政府宣布苛秕,位于F島的核電站肌访,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏艇劫。R本人自食惡果不足惜吼驶,卻給世界環(huán)境...
- 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望店煞。 院中可真熱鬧蟹演,春花似錦、人聲如沸顷蟀。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)鸣个。三九已至羞反,卻和暖如春布朦,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背昼窗。 一陣腳步聲響...
- 正文 我出身青樓右遭,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親缤削。 傳聞我的和親對(duì)象是個(gè)殘疾皇子窘哈,可洞房花燭夜當(dāng)晚...
推薦閱讀更多精彩內(nèi)容
- <extension>123</extension><mime-type>application/vnd.lotu...
- 平時(shí)我們?cè)趯?xiě)一般的應(yīng)用程序的時(shí)候,無(wú)論如何都會(huì)有一個(gè)main函數(shù)入口亭敢。而在進(jìn)行web開(kāi)發(fā)的時(shí)候滚婉,從頭到尾我們都沒(méi)有...
- 本章為部署描述符中Web容器支持詳細(xì)描述Java Servlet 規(guī)范3.0版本要求。部署描述符在應(yīng)用開(kāi)發(fā)者帅刀,應(yīng)用...
- 我生于湘西一個(gè)貧苦農(nóng)民家庭锥余,在我印象中我媽從來(lái)都沒(méi)有給我買(mǎi)過(guò)一件新衣服腹纳,我都是穿表姐,堂姐不要和剩下來(lái)的衣服驱犹,物質(zhì)...