JAR vs WAR
JAR og WAR er to typer filarkiver. Mer riktig, en WAR-fil er også en JAR-fil, men de brukes til forskjellige formål. JAR-filer er som kjente ZIP-filer. De kan brukes til arkivering for generelle formål, men den mest populære bruken av JAR-filer er å bruke dem som containere for Java-klassefiler og ressursfiler som utgjør en java-applikasjon. WAR-filer brukes spesielt for distribusjon av webapplikasjoner.
Hva er JAR?
JAR (Java ARchive) er et filarkiv som bærer mange andre filer. JAR-filer brukes vanligvis av Java-utviklere til å distribuere Java-applikasjoner eller Java-biblioteker ved hjelp av JAR-filene som containere for Java-klassefiler og tilsvarende ressursfiler (dvs. tekst, lyd, video osv.). Velkjent filarkiveringsformat ZIP er grunnlaget som JAR-filen er bygget på. Brukere kan enten bruke jar-kommandoen til JDK (Java Development Kit) eller vanlig ZIP-programvare for å trekke ut innholdet i JAR-filer. JAR-filer er en veldig praktisk måte å laste ned en hel webapplikasjon i en enkelt fil, uten å måtte laste ned alle filene som utgjør webapplikasjonen separat. For å lese / skrive JAR-filer bruker Java-utviklere klassene i java.util.zip-pakken. Hvis JAR-filen skal utføres som et frittstående program, vil en av klassene spesifiseres som "hoved" -klassen i oppføringene til manifestfilen. Kjørbare JAR-filer kan kjøres ved hjelp av java-kommandoen med jar-attributtet (dvs. java -jar foo.jar).
Hva er WAR?
WAR (Web Application aRchive) er en JAR-fil som brukes som en beholder for en gruppe ressursfiler for webapplikasjoner (som utgjør en webapplikasjon) som JSP (Java Server Pages), servlets, klassefiler, XML-filer og web (HTML) sider. WAR-filer identifiseres av filtypen.war. De ble utviklet av Sun Microsystems (originale utviklere av Java-programmeringsspråk). Digitale signaturer som brukes på JAR-filer (for å overlate koden) kan også brukes på WAR-filer.
En WAR-fil er internt organisert i et hierarki av spesielle kataloger. Strukturen til webapplikasjonen i WAR-filen er definert i web.xml-filen (som ligger i / WEB-INF-katalogen). Web.xml beskriver også hvilken URL som er koblet til hvilken servlet. De definerer også variablene som er tilgjengelige inne i servelet og avhengigheter som må settes opp. Men hvis WAR-filen bare inneholder JSP-filer, er web.xml-filen valgfri.
Hva er forskjellen mellom JAR og WAR?
JAR-filer har.jar-filtypen, mens WAR-filer har.war-utvidelsen. Men en WAR-fil er en bestemt type JAR-fil. JAR-filer inneholder klassefiler, biblioteker, ressurser og eiendomsfiler. WAR-filer inneholder servlets, JSP-sider, HTML-sider, JavaScript-koding. JAR-filer brukes til å arkivere et helt Java-program (desktop), mens WAR-filer brukes til å distribuere webapplikasjoner.