jar包和war包的區(qū)別:
war是一個web模塊起趾,其中需要包括WEB-INF唉锌,是可以直接運行的WEB模塊隅肥。而jar一般只是包括一些class文件(當(dāng)然想包含任何文件都可以),在聲明了Main_class之后是可以用java命令運行的.
它們都是進經(jīng)過壓縮的包,拿Tomcat來說,將war文件包放置它的\webapps\目錄下袄简,啟動Tomcat,這個war包可以自動進行解壓腥放,也就是你的web目錄,相當(dāng)于發(fā)布了绿语。
war包:是做好一個web應(yīng)用后秃症,通常是網(wǎng)站,打成包部署到web應(yīng)用容器中(如Tomcat)吕粹。
jar包:通常是開發(fā)時要引用通用類种柑,打成包便于存放管理。
ear包:企業(yè)級應(yīng)用匹耕,通常是EJB打成ear包聚请。
所有的包都是用jar命令打包的,只不過擴展名不一樣稳其。
WAR是Sun提出的一種Web應(yīng)用程序格式驶赏,與JAR類似,也是包含許多文件的一個壓縮包既鞠。這個包中的文件按一定目錄結(jié)構(gòu)來組織:通常其根目錄下包含有Html和Jsp文件或者包含這兩種文件的目錄煤傍,另外還會有一個WEB-INF目錄,這個目錄很重要嘱蛋。通常在WEB-INF目錄下有一個web.xml文件蚯姆、一個classes目錄和一個lib目錄,web.xml是這個應(yīng)用的配置文件浑槽,而classes目錄下則包含編譯好的Servlet類和Jsp或Servlet所依賴的其它類(如JavaBean)蒋失。通常這些所依賴的類也可以打包成JAR放到WEB-INF下的lib目錄下(classes和lib目錄是web應(yīng)用的classpath),當(dāng)然也可以放到系統(tǒng)的CLASSPATH中桐玻,但那樣移植和管理起來不方便篙挽。