#22 ์๋ฐ ์ฑ ๋ฐฐํฌ (JAR, WAR)
by JiwonDev์๋ฐ๋ ์ดํ๋ฆฌ์ผ์ด์ ์ ์ฝ๊ฒ ์ฌ์ฉ๊ฐ๋ฅํ๋๋ก ๊ด๋ จ ํ์ผ(๋ฐ์ดํธ์ฝ๋, ๋ฆฌ์์ค, ์์ฑํ์ผ)์ ์์ถํ์ฌ JAR, WAR ํ์ฅ์๋ก ๋ฐฐํฌ๊ฐ๋ฅํ๋ค. ๋ณดํต ์น ์๋น์ค ๋ฐฐํฌ์ WAR ํฌ๋งท์ผ๋ก ๋ฌถ์ด /webapps๋ฑ์ ์ง์ ๋ ๊ฒฝ๋ก์ ๋ฃ๊ณ ํฐ์บฃ๊ฐ์ ์น ์ปจํ ์ด๋๋ฅผ ์ด์ฉํด ์น ์๋ฒ๋ก ๋ฐฐํฌํ๋ ๋ฐฉ์์ผ๋ก ๋ง์ด ์ฌ์ฉํ๊ณค ํ๋ค.
# JAR (Java Archive)
.jar ํ์ฅ์ ํ์ผ์๋ Class์ ๊ฐ์ Java ๋ฆฌ์์ค์ ์์ฑ ํ์ผ, ๋ผ์ด๋ธ๋ฌ๋ฆฌ ํ์ผ๋ฑ์ด ํฌํจ๋์ด ์๋ค.
์ฝ๊ฒ JAVA ์ดํ๋ฆฌ์ผ์ด์
์ด ๋์ํ ์ ์๋๋ก ์๋ฐ ํ๋ก์ ํธ๋ฅผ ์์ถํ ํ์ผ๋ก ์๊ฐํ์๋ฉด ๋๋ค. ์ค์ ๋ก JAR ํ์ผ์ JVM ํ๋ซํผ์ ๊ท์๋๋ ์ ๋ง ์ ์ธํ๋ฉด ์๋์ฐ ZIPํ์ผ๊ณผ ๊ฑฐ์ ๋์ผํ ๊ตฌ์กฐ์ด๋ค.
JAR ํ์ผ์ ์ํ๋ ๊ตฌ์กฐ๋ก ๊ตฌ์ฑ์ด ๊ฐ๋ฅํ๊ณ JDK ์์ด JRE ๋ง์ผ๋ก๋ ์คํ ๊ฐ๋ฅํ๊ฒ ๋ฐฐํฌํ๋ค. (์ฐธ๊ณ ๋ก ์ต์ ๋ฒ์ Java๋ JRE๋ฅผ ๋ฐ๋ก ์ ๊ณตํ์ง์๊ณ JDK ๋ง ๊ณต์์ ์ผ๋ก ์ ๊ณตํ๋ค.)
# WAR (Web Application Archive)
.war ํ์ฅ์ ํ์ผ์ servlet / jsp ์ปจํ
์ด๋์ ๋ฐฐ์น ํ ์ ์๋ ์น ์ดํ๋ฆฌ์ผ์ด์
(Web Application) ์์ถ ํ์ผ ํฌ๋งท์ด๋ค. JSP, SERVLET, JAR, CLASS, XML, HTML, JAVASCRIPT ๋ฑ Servlet Context ๊ด๋ จ ํ์ผ๋ค๋ก ํจํค์ง ๋์ด์๋ค. WAR๋ ์น ์์ฉ ํ๋ก๊ทธ๋จ๋ฅผ ์ํ ํฌ๋งท์ด๊ธฐ ๋๋ฌธ์ ์น ๊ด๋ จ ์์๋ง ํฌํจํ๊ณ ์์ผ๋ฉฐ ์ด๋ฅผ ์ฌ์ฉํ๋ฉด ์น ์ดํ๋ฆฌ์ผ์ด์
์ ์ฝ๊ฒ ๋ฐฐํฌํ๊ณ ํ
์คํธ ํ ์ ์๊ฒ ๋ง๋ค์ด์ ธ์๋ค.
์ํ๋ ๊ตฌ์ฑ์ ํ ์ ์๋ JAR ํฌ๋งท๊ณผ ๋ฌ๋ฆฌ WAR์ WEB-INF ๋ฐ META-INF ๋๋ ํ ๋ฆฌ๋ก ์ฌ์ ์ ์ ๋ ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํ๋ฉฐ WARํ์ผ์ ์คํํ๋ ค๋ฉด Tomcat, Weblogic, Websphere ๋ฑ์ ์น ์๋ฒ (WEB)๋๋ ์น ์ปจํ
์ด๋(WAS)๊ฐ ํ์๋ก ํ๋ค.
WAR ํ์ผ๋ JAVA์ JAR ์ต์
(java - jar)์ ์ด์ฉํด ์์ฑํ๋ JARํ์ผ์ ์ผ์ข
์ผ๋ก, JARํ์ผ์ ์น ์ปจํ
์ด๋์์ ์ฌ์ฉํ๋ ์ค์ ํ์ผ, ์๋ธ๋ฆฟ, JSP๋ฑ์ด ํฌํจ๋์ด์๋ค๊ณ ์๊ฐํ๋ฉด ๋๋ค.
# EAR (Java Enterprise Archive)
๊ฐ๋ฐํ๋ฉด์ ๋ณผ์ผ์ ๋ง์ด ์๊ฒ ์ง๋ง, JAVA EE (Enterprise Edition)์์ ์ฐ์ด๋ ํ์ผํ์์ผ๋ก ํ ๊ฐ ์ด์์ ๋ชจ๋์ ๋จ์ผ ์์ถํ์ผ๋ก ํจํค์งํ์ฌ ์ดํ๋ฆฌ์ผ์ด์ ์๋ฒ์ ๋์์ ์ฌ๋ฆฌ๊ธฐ ์ํด ์ฌ์ฉ๋๋ ํฌ๋งท์ด๋ค.
'๐ฑBackend > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[์ฝ๋๋ถ์๋๊ตฌ]#2 Jacoco ์ ์ฉํ๊ธฐ (0) | 2021.08.21 |
---|---|
[์ฝ๋๋ถ์ ๋๊ตฌ]# 1 ์ฝ๋ ์ปค๋ฒ๋ฆฌ์ง๋? (0) | 2021.08.21 |
#21 Servlet Context Listener (0) | 2021.07.21 |
#20 JDBC ํธ๋์ญ์ (Spring -@Transaction) (0) | 2021.07.21 |
#19 JDBC (0) | 2021.07.21 |
๋ธ๋ก๊ทธ์ ์ ๋ณด
JiwonDev
JiwonDev