Diferența dintre JAR și WAR

JAR vs WAR

JAR și WAR sunt două tipuri de arhive de fișiere. Mai corect, un fișier WAR este, de asemenea, un fișier JAR, dar acestea sunt folosite în scopuri diferite. Fișierele JAR sunt ca fișierele ZIP cunoscute. Acestea ar putea fi folosite pentru orice arhivare generală, dar cea mai populară utilizare a fișierelor JAR le folosește ca recipiente pentru fișiere de clasă Java și fișiere de resurse care alcătuiesc o aplicație java. Fișierele WAR sunt utilizate în mod special pentru implementarea aplicațiilor web.

Ce este JAR?

JAR (Java ARchive) este o arhivă de fișiere care poartă multe alte fișiere. Fișierele JAR sunt de obicei folosite de dezvoltatorii Java pentru a distribui aplicații Java sau biblioteci Java utilizând fișierele JAR ca și containere pentru fișierele de clasă Java și fișierele de resurse corespunzătoare (adică text, audio, video etc.). Bine cunoscutul format de arhivare a fișierelor ZIP este baza pe care este construit fișierul JAR. Utilizatorii pot folosi comanda jar a software-ului JDK (Java Development Kit) sau obișnuit ZIP pentru extragerea conținutului fișierelor JAR. Fișierele JAR reprezintă o modalitate foarte convenabilă de a descărca o întreagă aplicație web într-un singur fișier, fără a fi nevoie să descarceți separat toate fișierele care alcătuiesc aplicația web. Pentru a putea citi / scrie fișiere JAR, dezvoltatorii Java folosesc clasele conținute în pachetul java.util.zip. Dacă fișierul JAR ar trebui executat ca o aplicație autonomă, atunci una din clase va fi specificată ca fiind "clasa" principală în intrările fișierului manifest. Fișierele JAR executabile pot fi executate utilizând comanda java cu atributul jar (adică java -jar foo.jar).

Ce este războiul?

WAR (Aplicație Web aRchive) este un fișier JAR folosit ca container pentru un grup de fișiere de resurse pentru aplicații web (care alcătuiesc o aplicație web), cum ar fi JSP (Java Server Pages), servlet-uri, fișiere de clasă, fișiere XML și web ) pagini. Fișierele WAR sunt identificate prin extensia lor de fișier .war. Ele au fost dezvoltate de Sun Microsystems (dezvoltatori originali ai limbajului de programare Java). Semnaturile digitale utilizate în fișierele JAR (pentru a încredința codul) pot fi utilizate și pe fișierele WAR.

Un fișier WAR este organizat intern într-o ierarhie de directoare speciale. Structura aplicației web conținută în fișierul WAR este definită în fișierul web.xml (care se află în directorul / WEB-INF). Web.xml descrie, de asemenea, care URL este conectat cu care servlet. Ele definesc, de asemenea, variabilele care sunt accesibile în interiorul servletului și dependențele care trebuie configurate. Cu toate acestea, dacă fișierul WAR conține numai fișiere JSP, fișierul web.xml este opțional.

Care este diferența dintre JAR și WAR?

Fișierele JAR au extensia .jar, în timp ce fișierele WAR au extensia .war. Dar, un fișier WAR este un tip specific de fișier JAR. Fișierele JAR conțin fișiere de clasă, biblioteci, resurse și fișiere de proprietate. Fișierele WAR conțin servlets, pagini JSP, pagini HTML, codare JavaScript. Fișierele JAR sunt utilizate pentru a arhiva o întreagă aplicație Java (desktop), în timp ce fișierele WAR sunt utilizate pentru a implementa aplicații web.