JAR vs KRIG
JAR och WAR är två typer av filarkiv. Mer korrekt är att en WAR-fil också är en JAR-fil, men de används för olika ändamål. JAR-filer är som välkända ZIP-filer. De kan användas för arkivering för allmänt ändamål, men den mest populära användningen av JAR-filer är att använda dem som behållare för Java-klassfiler och resursfiler som utgör en java-applikation. WAR-filer används specifikt för distribution av webbapplikationer.
Vad är JAR?
JAR (Java ARchive) är ett filarkiv som innehåller många andra filer. JAR-filer används vanligtvis av Java-utvecklare för att distribuera Java-applikationer eller Java-bibliotek med JAR-filer som behållare för Java-klassfiler och motsvarande resursfiler (t.ex. text, ljud, video, etc.). Välkänt filarkiveringsformat ZIP är grunden för vilken JAR-filen bygger. Användare kan antingen använda jar-kommandot i JDK (Java Development Kit) eller vanlig ZIP-programvara för att extrahera innehållet i JAR-filer. JAR-filer är ett mycket bekvämt sätt att ladda ner en hel webbapplikation i en enda fil utan att behöva ladda ner alla filer som utgör webbapplikationen separat. För att läsa / skriva JAR-filer använder Java-utvecklare klasserna i paketet java.util.zip. Om JAR-filen ska köras som en fristående applikation kommer en av klasserna att specificeras som "huvudklassen" i posterna i manifestfilen. Körbara JAR-filer kan köras med kommandot java med attributet jar (dvs. java -jar foo.jar).
Vad är WAR?
WAR (Web Application aRchive) är en JAR-fil som används som en behållare för en grupp webbapplikationsresursfiler (som utgör en webbapplikation) som JSP (Java Server Pages), servlets, klassfiler, XML-filer och webb (HTML) sidor. WAR-filer identifieras med deras filtillägg.war. De utvecklades av Sun Microsystems (ursprungliga utvecklare av Java-programmeringsspråk). Digitala signaturer som används på JAR-filer (för att anförtro koden) kan också användas på WAR-filer.
En WAR-fil är internt organiserad i en hierarki av specialkataloger. Webbapplikationens struktur i WAR-filen definieras i web.xml-filen (som finns i / WEB-INF-katalogen). Web.xml beskriver också vilken URL som är kopplad till vilken servlet. De definierar också de variabler som är tillgängliga i servelet och beroenden som måste ställas in. Men om WAR-filen bara innehåller JSP-filer är web.xml-filen valfri.
Vad är skillnaden mellan JAR och WAR?
JAR-filer har.jar-filtillägget, medan WAR-filer har.war-tillägget. Men en WAR-fil är en specifik typ av en JAR-fil. JAR-filer innehåller klassfiler, bibliotek, resurser och egendomsfiler. WAR-filer innehåller servlets, JSP-sidor, HTML-sidor, JavaScript-kodning. JAR-filer används för att arkivera en hel Java (desktop) applikation, medan WAR-filer används för att distribuera webbapplikationer.