์ํ ์๊ฐ
์ํ์ ๊ธฐ๋ฐ์ผ๋ก IDEA์์ Maven ํ๋ก์ ํธ๋ฅผ ๋ง๋๋ ๋ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ด ์์ต๋๋ค.

์ฌ๊ธฐ์๋ ๊ธฐ์กด ์ํ ์ค ํ๋๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ๋ก์ ํธ๋ฅผ ๋ง๋๋ ๊ฒ์ด ์ ์๋ฉ๋๋ค . ์ด ์ํ์ ๋ฌด์์ด๋ฉฐ ์ ํ์ํ๊ฐ์?
Maven์๋ ํ์คํ๋ ํ๋ก์ ํธ ํ ํ๋ฆฟ์ด ์์ต๋๋ค. ์ด๋ฌํ ํ ํ๋ฆฟ์ ์ํคํ์ ์ด๋ผ๊ณ ํฉ๋๋ค. src , java , ํ ์คํธ ํด๋ ๋ฑ ํ๋ก์ ํธ์ ์์ ๊ตฌ์กฐ๋ฅผ ๊ธฐ์ตํ์ญ๋๊น ? ๋ฐ๋ผ์ ์ด ํด๋ ๊ตฌ์กฐ๋ ์ํ์ ์ฌ์ฉํ์ฌ ์ค์ ๋ฉ๋๋ค.
๊ณต์ Maven ์น ์ฌ์ดํธ ์ ์ํ ํ ํ๋ฆฟ์ด ์์ต๋๋ค . ๊ทธ๋ค์ ๋์์ผ๋ก ๊ฐ๋จํ ์์ฉ ํ๋ก๊ทธ๋จ, ํ๋ฌ๊ทธ์ธ, ์น ์ฌ์ดํธ์ ๊ฐ์ ๋ค์ํ ์์ ํ๋ก์ ํธ๋ฅผ ์์ฑํ ์ ์์ต๋๋ค.
์ฌ์ฉ ๊ฐ๋ฅํ ์ํ ๋ชฉ๋ก์ ์ฝ์์์ ๋ค์ ๋ช ๋ น์ ์คํํ์ฌ ์ป์ ์ ์์ต๋๋ค. mvn archetype:generate
์ธ๊ธฐ ์๋ ์ํ
๊ฐ์ฅ ์ธ๊ธฐ ์๋ ์ํ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- maven-archetype-quickstart ;
- maven-archetype- ์ฌ์ดํธ
- maven-archetype-webapp ;
- maven-archetype-j2ee-simple ;
- jpa-maven-archetype ;
- spring-mvc-quickstart .
๋น Java ํ๋ก์ ํธ๋ฅผ ์์ฑํ๋ ค๋ฉด maven-archetype-quickstart archetype ์ ์ฌ์ฉํ์ญ์์ค . ์ง๋ ๊ฐ์์์ IDEA๋ก ํ๋ก์ ํธ๋ฅผ ๋ง๋ค ๋ ๋ณด์๋ ๊ทธ์ ์์ ๊ฒฐ๊ณผ๋ฌผ์ด์์ต๋๋ค.
์น ์๋ฒ ๋ด์์ ์คํ๋๋ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ฑํ๊ณ HTML ํ์ด์ง ๋ฑ์ ํ์ํ๋ ค๋ฉด maven -archetype-webapp ์ํคํ์ ์ ๊ธฐ๋ฐ์ผ๋ก ์์ ํ๊ฒ ์ฌ์ฉํ ์ ์์ต๋๋ค .
maven-archetype-site ์ํ์ ์ฌ์ฉํ์ฌ ์ฌ์ดํธ๋ฅผ ๋ง๋ค ์ ์์ต๋๋ค . ๋๋ ๋งค์ฐ ๊ฐ๋จํ ์ฌ์ดํธ๊ฐ ์์๋๋ ๊ฒฝ์ฐ maven-archetype-site-simple ์ํ๋ ๊ฐ๋ฅํฉ๋๋ค. ๋ค๋ฅธ ์ต์ ์ ์๋ํ๊ณ ๊ฐ์ฅ ๋ง์์ ๋๋ ์ต์ ์ ํ์ธํ์ญ์์ค.
Hibernate ๋๋ JPA๋ก ์์ ํ๋ ค๋ฉด jpa-maven-archetype archetype ์ ์ฌ์ฉํ ์ ์์ต๋๋ค .
๊ทธ๋ฆฌ๊ณ ๋ง์ง๋ง์ผ๋ก Spring ์์ ์ ์ํ ํน๋ณํ ์ํ์ธ spring-mvc-quickstart ๋ ์์ต๋๋ค . ์ด๋ณด์๋ค์๊ฒ ๋งค์ฐ ์ ์ฉํ ๊ฒ์ ๋๋ค. ํ์์ ๋ํ ๋ ์ ์ฌํ ์ ๋ณด๋ ์ฌ๊ธฐ ๋งํฌ์์ ์ฐพ์ ์ ์์ต๋๋ค .
์ํ์ด ์ข์ ์ด์ ๋ ๋ฌด์์ ๋๊น? ๊ทธ๋ค์ ์ฒ์๋ถํฐ ํ๋ก์ ํธ๋ฅผ ์์ฑํ๋ ค๊ณ ํฉ๋๋ค. ๋ ์ด์ Java๋ก๋ง ํ๋ก์ ํธ๋ฅผ ์์ฑํ๋ ์ฌ๋์ ์์ต๋๋ค. ์ต์ ํ๋ก์ ํธ๋ ๊ธฐ์ ์คํ์ ์์ฑ๋ฉ๋๋ค. 5-10๊ฐ์ ํ๋ ์์ํฌ ๋ชฉ๋ก๊ณผ ์์ญ ๊ฐ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์ต์ "๋ด๊ฐ ์์ฑํ๋ ์ธ์ด"์ ๋๋ค.
Maven์ ์น ์ ํ๋ฆฌ์ผ์ด์
์ด์๋ ๋ณ๋๋ก maven-archetype-webapp archetype ์ ๋ํด ์ดํด๋ณด๊ฒ ์ต๋๋ค .
์ด๊ฒ์ Java๋ก ์์ฑ๋ ๊ณ ์ ์ ์ธ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ Spring์ ์ธ๊ธฐ ์ดํ ์ฝ๊ฐ ๊ตฌ์์ด์ง๋ง ์ด๋ณด์์ธ ๋น์ ์ ๋งค์ฐ ์ ์ฉํ๋ค๋ ๊ฒ์ ์๊ฒ ๋ ๊ฒ์ ๋๋ค. ์ด ์ํ์ ๋ํด ๋ฌด์์ ์์์ผ ํฉ๋๊น?
์ด๋ฅผ ํตํด ๊ฐ๋จํ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ๋น๋ํ ์ ์์ต๋๋ค . ๋น๋ ๊ฒฐ๊ณผ๋ .war ํ์ผ์ด ๋ฉ๋๋ค . ์น ์ ํ๋ฆฌ์ผ์ด์ ์ด Tomcat์ ์ฆ์ ์ถ๊ฐ๋๋๋ก Deploy๋ฅผ ๊ตฌ์ฑํ ์ ์์ต๋๋ค. ๋ง์ง๋ง์ผ๋ก ๊ธฐ๋ณธ ์๋ธ๋ฆฟ๊ณผ JSP๋ฅผ ์คํํด ๋ณผ ์ ์์ต๋๋ค.
์ด ์ํ์ ๊ธฐ๋ฐ์ผ๋ก ํ๋ก์ ํธ๋ฅผ ์์ฑํ๋ฉด ๋ค์๊ณผ ๊ฐ์ ํด๋ ๊ตฌ์กฐ๋ฅผ ์ป๊ฒ ๋ฉ๋๋ค.

๋ค์์ ๋ช ๊ฐ์ง ํฅ๋ฏธ๋ก์ด ์ฌํญ์ ๋๋ค.
- ์น์ฑ ํด๋;
- WEB-INF ํด๋;
- web.xml ํ์ผ;
- index.jsp
์ฒซ์งธ, ์น ์์ฉ ํ๋ก๊ทธ๋จ์ ๋ชจ๋ ๋ฆฌ์์ค๊ฐ ์ ์ฅ๋๋ webapp ํด๋ (์น ์์ฉ ํ๋ก๊ทธ๋จ์์)๊ฐ ์์ต๋๋ค .
๋์งธ, web.xml ํ์ผ์ ์น ์์ฉ ํ๋ก๊ทธ๋จ ๋ฐฐํฌ ์ค๋ช ์ ์ ๋๋ค . ์น ์์ฉ ํ๋ก๊ทธ๋จ์ด ์น ์๋ฒ ๋ฐ ํด๋น ํด๋ผ์ด์ธํธ์ ์ํธ ์์ฉํ๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํฉ๋๋ค.
์ธ ๋ฒ์งธ๋ก index.jsp ํ์ผ์ด ์์ต๋๋ค . ์ด๊ฒ์ ์๋นํ ๋จ์ํ ํํ์ ์๋ธ๋ฆฟ์ ๋๋ค. ์๋ ์ค์ด๋ฉฐ ์ฒซ ๋ฒ์งธ JSP ์๋ธ๋ฆฟ์ ๋ณ๊ฒฝํ์ฌ ์คํํด ๋ณผ ์ ์์ต๋๋ค.
์๋ธ๋ฆฟ ๋ฐ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฉ ์ฃผ์ ์์ ์ด ๋ชจ๋ ๊ฒ์ ๋ํด ์์ธํ ์ค๋ช ํฉ๋๋ค.
GO TO FULL VERSION