728x90
* J2EE 어플리케이션에서 모듈은 그 기능에 따라 JAR/ WAR/ EAR로 패키징 된다.
> 각 파일이 담고 있는 규모를 따지면 class > jar > war >ear 순이 된다.
1. JAR (Java Archive)
: 하나의 어플리케이션 기능이 가능하도록 java 파일을 압축하고 지원한다.
라이브러리, 리소스, properties 파일을 포함한다.
path등의 경로를 유지하기 때문에 배포된 jar 파일을 사용할 때 파일에 대한 path는 신경쓰지 않아도 됨.
2. WAR (Web Archive)
: 웹 어플리케이션을 지원하기 위한 압축 방식으로 jsp, servlet, gif, html, jar 등을 지원한다.
war는 단독으로 실행이 안되고 반드시 WAS 컨테이너에 의해 실행되어야 하므로 배포 스크립터가 존재한다. (web.xml)
3. EAR (Enterprise Archive)
: 하나의 웹 어플리케이션 단위를 넘어 비지니스 단위를 처리하는 JAR와 웹 어플리케이션을 처리하는 WAR를 포괄적으로 지원한다.
jar와 war를 묶어서 각각의 기능을 지원한다. ( jar는 어플리케이션 레벨 - business level, war는 웹 어플리케이션 레벨 - web level 을 지원하도록)
* 참고로 톰캣이나 Jetty 같은 Standalone 웹 컨테이너는 EE가 아니기 때문에 EAR 파일을 지원하지 않는다. 그래서 war로 배포해야 한다.
728x90
'IT 용어정리' 카테고리의 다른 글
[용어정리] DevOps란? (0) | 2021.12.06 |
---|---|
[미들웨어] 3-Tier와 N-Tier 정리 (0) | 2021.08.23 |
[용어정리] TPS와 Working Thread 산정 방법 (0) | 2021.08.04 |