War包是什么,為什么WEB服務(wù)通常打出來(lái)的都是War包?除了War包,還有幾種打包格式,他們之間的區(qū)別呢?


War包是什么,為什么WEB服務(wù)通常打出來(lái)的都是War包?_騰訊視頻


1.背景介紹

2.知識(shí)剖析

3.常見(jiàn)問(wèn)題

4.解決方案

5.編碼實(shí)戰(zhàn)

6.擴(kuò)展思考

7.參考文獻(xiàn)

8.更多討論

1.背景介紹

WAR是Sun提出的一種Web應(yīng)用程序格式,是許多文件的一個(gè)壓縮包。這個(gè)包中的文件按一定目錄結(jié)構(gòu)來(lái)組織:通常其根目錄下包含有Html和Jsp文件或者包含這兩種文件的目錄,另外還會(huì)有一個(gè)WEB-INF目錄。通常在WEB-INF目錄下有一個(gè)web.xml文件和一個(gè)classes目錄,web.xml是這個(gè)應(yīng)用的配置文件,而classes目錄下則包含編譯好的Servlet類和Jsp或Servlet所依賴的其它類。

2.知識(shí)剖析

一個(gè)war包有什么樣的結(jié)構(gòu)?

war包就是一個(gè)web應(yīng)用的打包格式,一個(gè)web應(yīng)用,需要一個(gè)用戶交互的界面,負(fù)責(zé)給用戶提供信息輸入的地方,即jsp頁(yè)面。數(shù)據(jù)需要保存下來(lái),jsp把網(wǎng)頁(yè)上的數(shù)據(jù)穿送給后臺(tái)的java類,java類在得到這些數(shù)據(jù)之后再進(jìn)行數(shù)據(jù)相關(guān)的工作,如存入數(shù)據(jù)庫(kù),給出相關(guān)統(tǒng)計(jì)數(shù)據(jù)等等。


war包結(jié)構(gòu)

3.常見(jiàn)問(wèn)題

為什么WEB服務(wù)通常打出來(lái)的都是War包?

Java web工程,都是打成war包,進(jìn)行發(fā)布,打成war包的好處是不會(huì)缺少目錄,并且只管理好一個(gè)發(fā)布文件就好,并且tomcat服務(wù)器能夠自動(dòng)識(shí)別,將war包放在tomcat容器的webapps下,啟動(dòng)服務(wù),即可運(yùn)行該項(xiàng)目,該war包會(huì)自動(dòng)解壓出一個(gè)同名的文件夾。

除了War包,還有幾種打包格式,他們之間的區(qū)別呢?


幾種打包格式

4.解決方案

5.編碼實(shí)戰(zhàn)

6.擴(kuò)展思考

第一,怎么運(yùn)行一個(gè)war包。第二,Tomcat服務(wù)器是怎么樣解析這個(gè)war包的。

對(duì)于第一個(gè)問(wèn)題,我們只需要把打好的war包拷貝到Tomcat的webapps目錄下,Tomcat服務(wù)器會(huì)自行解壓這個(gè)包。

第二個(gè)問(wèn)題,如圖。


war包解析過(guò)程

這里注意,待匹配的URL是如何得到的,

訪問(wèn)的URL - web應(yīng)用的根目錄 = 待匹配的URL

比如:

瀏覽器輸入的URL是:localhost:8080/myapp/table

web的根目錄是:localhost:8080/myapp

那么待匹配的URL是:/table,則web.xml中關(guān)于servlet的匹配規(guī)則,url-patern就要與此URL一致了。

根據(jù)URL找到該servlet之后,就找到了該servlet下的類,應(yīng)用就開(kāi)始運(yùn)行了。

7.參考文獻(xiàn)

http://www.itdecent.cn/p/ad644c5b6426

http://blog.csdn.net/kingmax54212008/article/details/52316250

8.更多討論

https://ptteng.github.io/PPT/PPT-java/java-task2war%E5%8C%85.html#/

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容