Różnica między JAR a WAR

JAR vs WAR

JAR i WAR to dwa typy archiwów plików. Mówiąc dokładniej, plik WAR jest również plikiem JAR, ale są one wykorzystywane do różnych celów. Pliki JAR są jak dobrze znane pliki ZIP. Można ich używać do dowolnej archiwizacji ogólnego przeznaczenia, ale najpopularniejszym zastosowaniem plików JAR jest używanie ich jako pojemników na pliki klas Java i pliki zasobów, które tworzą aplikację Java. Pliki WAR są używane specjalnie do wdrażania aplikacji internetowych.

Co to jest JAR?

JAR (Java ARchive) to archiwum plików, które przenosi wiele innych plików. Pliki JAR są zwykle używane przez programistów Java do dystrybucji aplikacji Java lub bibliotek Java przy użyciu plików JAR jako kontenerów dla plików klasy Java i odpowiednich plików zasobów (tj. Tekstu, dźwięku, wideo itp.). Dobrze znany format archiwizacji plików ZIP jest podstawą, na której zbudowany jest plik JAR. Użytkownicy mogą użyć komendy jar JDK (Java Development Kit) lub zwykłego oprogramowania ZIP do wyodrębnienia zawartości plików JAR. Pliki JAR to bardzo wygodny sposób pobierania całej aplikacji internetowej w jednym pliku, bez konieczności pobierania wszystkich plików tworzących aplikację internetową osobno. W celu odczytu / zapisu plików JAR programiści Java używają klas zawartych w pakiecie java.util.zip. Jeśli plik JAR ma być wykonywany jako samodzielna aplikacja, wówczas jedna z klas zostanie określona jako „główna” klasa w ramach wpisów pliku manifestu. Pliki wykonywalne JAR można uruchamiać za pomocą komendy java z atrybutem jar (tj. Java -jar foo.jar).

Co to jest WAR?

WAR (aRchive aplikacji sieci Web) to plik JAR używany jako kontener dla grupy plików zasobów aplikacji internetowych (które składają się na aplikację internetową), takich jak JSP (strony serwera Java), serwlety, pliki klas, pliki XML i WWW (HTML ) stron. Pliki WAR są identyfikowane przez ich rozszerzenie .war. Zostały one opracowane przez Sun Microsystems (oryginalni twórcy języka programowania Java). Podpisy cyfrowe używane w plikach JAR (w celu powierzenia kodu) mogą być również używane w plikach WAR.

Plik WAR jest wewnętrznie zorganizowany w hierarchii specjalnych katalogów. Struktura aplikacji internetowej zawartej w pliku WAR jest zdefiniowana w pliku web.xml (który znajduje się w katalogu / WEB-INF). Web.xml opisuje także, który adres URL jest powiązany z którym serwletem. Definiują również zmienne, które są dostępne w obrębie serwletu i zależności, które należy skonfigurować. Jeśli jednak plik WAR zawiera tylko pliki JSP, plik web.xml jest opcjonalny.

Jaka jest różnica między JAR a WAR?

Pliki JAR mają rozszerzenie .jar, podczas gdy pliki WAR mają rozszerzenie .war. Ale plik WAR to określony typ pliku JAR. Pliki JAR zawierają pliki klas, biblioteki, zasoby i pliki właściwości. Pliki WAR zawierają serwlety, strony JSP, strony HTML, kodowanie JavaScript. Pliki JAR służą do archiwizacji całej aplikacji Java (komputerowej), natomiast pliki WAR służą do wdrażania aplikacji internetowych.