1. 程式人生 > 其它 >Jar包與war包的介紹與區別

Jar包與war包的介紹與區別

1、Jar包的介紹

Jar(Java Archive,Java歸檔檔案)是與平臺無關的檔案格式,它允許將許多檔案組合成一個壓縮檔案。

Jar檔案格式以流行的ZIP檔案格式為基礎。但是與ZIP檔案不同的是,JAR檔案不僅用於壓縮和釋出,而且還用於部署和封裝庫、元件外掛程式,並可以被像編譯器和JVM這樣的工具直接使用。在Jar中包含特殊的檔案,如manifests和部署描述符,用來知識工具如何處理特定的Jar。

manifest元素 是一種XML檔案中的頂層元素,使用搶檔名的形式來標識專案中的程式清單

簡單來說,Jar包就是別人已經寫好的一些類,然後對這些類進行打包。可以將這些Jar包引入到自己的專案中去,可以直接使用Jar包中的類和屬性,這些Jar包一般存放在lib目錄下

2、War包的介紹

War是一個可以直接執行的web模組,通常用於網站,打成包部署到容器中去。以Tomcat來說,將War包放置在其\webapps\目錄下,然後啟動Tomcat,這個包就會自動解壓,就相當於釋出了。

War包是Sun提出的一種web應用程式格式,與Jar類似,是很多檔案的壓縮包。War包中的檔案按照一定目錄結構來組織。根據其根目錄下包含有html和jsp檔案,或者包含有兩種檔案的目錄,另外還有WEB-INF目錄。通常在WEB-INF目錄下含有一個web.xml檔案和一個classes目錄,web.xml是這個應用的配置檔案,而classes目錄表則包含編譯好的servlet類和jsp,或者servlet所以來的其他類(如JavaBean)。通常這些所依賴的類也可以打包成jar包放在WEB-INF下的lib目錄下。

簡單來說,war包是JavaWeb程式打的包,war包裡面包括寫的程式碼編譯成的class檔案,依賴的包,配置檔案,所有的網站頁面,包括html,jsp等等。一個war包可以理解為是一個web專案,裡面是專案的所有東西。

3、Jar與War的區別

War檔案代表了一個Web應用程式,Jar是類的歸檔檔案

如果一個Web應用程式的目錄和檔案非常多,那麼將這個Web應用程式部署到另一臺機器上,就不是很方便了,這時可以將Web應用程式打包成Web 歸檔(WAR)檔案,這個過程和把Java類檔案打包成JAR檔案的過程類似。利用WAR檔案,可以把Servlet類檔案和相關的資源集中在一起進行釋出。在這個過程中,Web應用程式就不是按照目錄層次結構來進行部署了,而是把WAR檔案作為部署單元來使用。

一個War檔案就是一個Web應用程式,建立War檔案,就是把整個Web應用程式(不包括Web應用程式層次結構的根目錄)壓縮起來,制定一個.war副檔名。

要注意的是,雖然WAR檔案和JAR檔案的檔案格式是一樣的,並且都是使用jar命令來建立,但就其應用來說,WAR檔案和JAR檔案是有根本區別的。

  • JAR檔案的目的是把類和相關的資源封裝到壓縮的歸檔檔案中,
  • 一個WAR檔案代表了一個Web應用程式,它可以包含 Servlet、HTML頁面、Java類、影象檔案,以及組成Web應用程式的其他資源,而不僅僅是類的歸檔檔案。

那麼什麼時候應該使用WAR檔案呢?在開發階段不適合使用WAR檔案,因為在開發階段,經常需要新增或刪除Web應用程式的內容,更新 Servlet類檔案,而每一次改動後,重新建立WAR檔案將是一件浪費時間的事情。在產品釋出階段,使用WAR檔案是比較合適的,因為在這個時候,幾乎不需要再做什麼改動了。

在開發階段,我們通常將Servlet原始檔放到Web應用程式目錄的src子目錄下,以便和Web資原始檔區分。在建立WAR檔案時,只需要將src目錄從Web應用程式目錄中移走,就可以打包了。

4、部署war包到Tomcat

  1. 將程式打包為一個test.war包;
  2. 開啟Tomcat的安裝路徑,然後進入到其中的webapps資料夾中,把test.war放在webapps資料夾下;
  3. 啟動Tomcat。
    如果不需要更改配置檔案:到這一步就可以了。

在瀏覽器輸入“http:localhost:tomcat_port/test即可開啟test專案的 index.jsp頁面(port是自己的埠號)。如果test專案沒有index.jsp頁面,那就需要開啟其他相應的頁面。

如果需要更改配置檔案:

  1. 關閉 Tomcat。
  2. 刪除 test.war檔案(如果在tomcat啟動的狀態下刪去war包,解壓好的資料夾也會被一併刪除,所以需要在解壓後停止tomcat, 然後刪掉war包,這時再啟動。專案資料夾就會被認為不是war解壓而來。)。
  3. 由於剛剛啟動過Tomcat,Tomcat會自動解壓縮test.war為 test資料夾。所以我們在webapps下面可以看到test資料夾。開啟test資料夾更改配置檔案即可。
  4. 更新完配置之後,啟動Tomcat。
  5. 瀏覽器開啟即可。

參考連結:https://www.jianshu.com/p/3b5c45e8e5bd