JAR vs WAR
JAR e WAR são dois tipos de arquivos. Mais corretamente, um arquivo WAR também é um arquivo JAR, mas eles são usados para propósitos diferentes. Os arquivos JAR são como arquivos ZIP bem conhecidos. Eles podem ser usados para qualquer arquivamento de propósito geral, mas o uso mais popular de arquivos JAR é usá-los como contêineres para arquivos de classe Java e arquivos de recursos que compõem um aplicativo Java. Os arquivos WAR são usados especificamente para a implantação de aplicativos da web.
O que é JAR?
JAR (Java ARchive) é um arquivo que carrega muitos outros arquivos. Os arquivos JAR geralmente são usados por desenvolvedores Java para distribuir aplicativos Java ou bibliotecas Java usando os arquivos JAR como contêineres para os arquivos de classe Java e os arquivos de recursos correspondentes (ou seja, arquivos JAR).e. texto, áudio, vídeo, etc.). O conhecido formato de arquivamento de arquivos ZIP é a base sobre a qual o arquivo JAR é construído. Os usuários podem usar o comando jar do JDK (Java Development Kit) ou software ZIP regular para extrair o conteúdo dos arquivos JAR. Os arquivos JAR são uma maneira muito conveniente de baixar um aplicativo da Web inteiro em um único arquivo, sem precisar baixar todos os arquivos que compõem o aplicativo da Web separadamente. Para ler/gravar arquivos JAR, os desenvolvedores Java usam as classes contidas no pacote java.util.zip. Se o arquivo JAR deve ser executado como um aplicativo independente, uma das classes será especificada como a classe “principal” nas entradas do arquivo de manifesto. Arquivos JAR executáveis podem ser executados usando o comando java com o atributo jar (ou seja, java -jar foo.jar).
O que é GUERRA?
WAR (Web Application aRchive) é um arquivo JAR usado como um contêiner para um grupo de arquivos de recursos de aplicativos da Web (que compõem um aplicativo da Web), como JSP (Java Server Pages), servlets, arquivos de classe, XML arquivos e páginas da web (HTML). Os arquivos WAR são identificados por sua extensão de arquivo.war. Eles foram desenvolvidos pela Sun Microsystems (desenvolvedores originais da linguagem de programação Java). Assinaturas digitais usadas em arquivos JAR (para confiar o código) também podem ser usadas em arquivos WAR.
Um arquivo WAR é organizado internamente em uma hierarquia de diretórios especiais. A estrutura da aplicação web contida no arquivo WAR é definida no arquivo web.xml (que reside dentro do diretório /WEB-INF). Web.xml também descreve qual URL está conectada com qual servlet. Eles também definem as variáveis que são acessíveis dentro do servelet e as dependências que devem ser configuradas. No entanto, se o arquivo WAR contiver apenas arquivos JSP, o arquivo web.xml será opcional.
Qual é a diferença entre JAR e WAR?
Os arquivos JAR têm a extensão de arquivo.jar, enquanto os arquivos WAR têm a extensão.war. Mas, um arquivo WAR é um tipo específico de um arquivo JAR. Os arquivos JAR contêm arquivos de classe, bibliotecas, recursos e arquivos de propriedades. Os arquivos WAR contêm servlets, páginas JSP, páginas HTML, codificação JavaScript. Os arquivos JAR são usados para arquivar um aplicativo Java (desktop) inteiro, enquanto os arquivos WAR são usados para implantar aplicativos da Web.