요르딩딩
[Spring 분석] (No.3) Jar, War, Ear란 본문
728x90
반응형
jar, war란 (ver.1)
https://hyeounstory.tistory.com/74?category=849984
ver.1에 이어서 jar, war에 대한 설명을 다시 정리해 보려합니다.
Jar, War, Ear란
- 모두 자바의 jar툴을 이용하여 생성된 압축(아카이브) 파일이며, 어플리케이션을 쉽게 배포하고 동작시킬 수 있도록 관련 파일(리소스, 속성파일 등)들을 패키징해주는 역할을 합니다.
- 파일 규모 :ear > war > jar > class
JAR
- 자바 클래스 파일과 관련 소스파일 및 메타데이터을 압축한 파일입니다.
- 하나의 Application 기능이 가능하도록 java파일을 압축하고 지원합니다.
- java 어플리케이션이 동작할 수 있도록 자바 프로젝트를 압축한 파일로 생각할 수 있습니다.
- Jar는 Java 어플리케이션 소스를 배포할 때, path등의 설정으로 인한 이슈를 제거하기 위해 만들어진 압축 방식입니다.
- Jar 방식은 압축의 해제 없이 JDK에서 각 파일들을 접근하여 사용할 수 있도록 설계되었습니다.
- jar는 웹으로 배포하지 않은 java class 파일과 EJB 파일을 가집니다.
WAR
- war는 servlet, jsp 컨테이너에 배치 할 수 있는 웹 어플리케이션 압축 파일 포맷입니다.
jsp, servlet, jar, class, xml , html, javascript 등 servlet context 관련 파일들로 패키징 되어 있습니다. - War는 웹 프로젝트에서 배포를 위한 최소한의 단위입니다.
- War는 단독으로 실행되지 않으며 WAS에 의해 실행되어야 하므로 배포에 대한 메타정보(web.xml)이 포함되어 있습니다.
- war은 jar와 달리 웹 어플리케이션을 지원하기 위한 압축방식입니다.
EAR
- 하나의 웹 어플리케이션 단위를 넘어 실제 서버 배포를 위한 단위
- ear은 엔터프라이즈 애플리케이션에 필요한 jar이나 war 같은 모든 파일을 포함합니다.
차이
- 사용되는 목적에 따라 압축되는 파일 범위만 다른 같은 압축파일.
- Jar는 일반 Java Application을 위한 압축 포맷입니다. 반면에 War는 Java WebApplication을 위한 압축 포맷입니다.
- Jar는 구조를 원하는 대로 지정할 수 있습니다. 반면에 War는 WEB-INF 및 META-INF 디렉토리로 사전 정의된 구조를 사용합니다.
- Jar 파일을 JDK만 있다면 바로 실행할 수 있지만, War 파일을 실행하려면 WAS가 반드시 필요합니다.
728x90
반응형
'[Web] > [Spring]' 카테고리의 다른 글
context-*.xml 에 대해 알아보자 (1) (0) | 2021.09.13 |
---|---|
Controller에 대해 알아보자 (0) | 2021.09.09 |
[Spring 분석] (No.2)Bean, Application Context(Bean Factory)란 (0) | 2021.09.01 |
[Spring 분석] (No.1) MVC 패턴이란 (0) | 2021.09.01 |
[Spring 분석] 터미널을 이용한 properties 암복호화 (0) | 2021.07.05 |
Comments