2022 01 09 - oneso123456789/2022 GitHub Wiki
์ด์ ๋ฐฐ๊ฐ ์ํ์ ์ปค๋ฐ ๋๋ฝํจ 9์ผ ์คํ 6์ 21๋ถ ์คํ
๊ทธ๋ฆฌ๊ณ ๋ค์์ฃผ ์ค์ผ๋ก ํ์ผ ์ถฉ๋ ํ
์คํธ๋ ํด๋ด์ผํ ๊บผ ๊ฐ์
๊นํ๋ธ๋ ํ์
์ ์ํด์ ๋ง๋ ๊ฑด๋ ๋์ค์ ํ์
์ ๋ฌธ์ ๊ฐ ์๊ฒผ์๋ ์ํํ ํด๊ฒฐ์ ์ํด์
๋น๋์ ์๋์ผ๋ก git or github์ ์
๋ฐ์ดํธ๋ฅผ ์ณ์ฃผ๋๊ฒ ์ข์ jenkins์ฌ์ฉํด๋ณด๊ธฐ
ec2์์ ํฐ์บฃ์ ์ฌ์ฉํ๋ ค๊ณ ํ์ง๋ง ์์๋ณด๋ ํ์ผ์ ์์ ํ ๋๋ง๋ค ๊ณ์ ์ฌ๋ ค์ค์ผ ํด์ ๋นํจ์จ์ ์
db์๋ ๋ค๋ฅด๊ฒ ์ผ๋จ ๋ก์ปฌ ์๋ฒ๋ฅผ ์ฌ์ฉํ๊ณ ๋ฐฐํฌ๋ง ec2์์ ์ฌ์ฉํ๋๊ฒ ์ข๊ฒ ์
์คํ๋ง MVC๋ฅผ ํ์ตํ๋๋ฐ ๊ฐ์ฅ ๋จผ์ ๊ธฐ์ตํด์ผํ ์ ์ ์คํ๋ง MVC๊ฐ ์คํ๋ง์ ์๋ธ ํ๋ก์ ํธ๋ผ๋ ์ ์
https://spring.io/project๋ฅผ ๋ณด๋ฉด Spring Framework๋ผ๋ ๋ฉ์ธ ํ๋ก์ ํธ ์ธ์๋
์ฌ๋ฌ ์ข
๋ฅ์ ์๋ธ ํ๋ก์ ํธ๊ฐ ์กด์ฌํ๋๋ฐ, ์คํ๋ง MVC์ญ์ ์ด๋ฌํ ํ๋ก์ ํธ ์ค ํ๋์
์คํ๋ง์ ํ๋์ ๊ธฐ๋ฅ์ ์ํด์ ๋ง๋ค์ด์ง ํ๋ ์์ํฌ๊ฐ ์๋๋ผ ์ฝ์ด๋ผ๊ณ ํ ์์๋
ํ๋ ์์ํฌ์ ์ฌ๋ฌ ์๋ธ ํ๋ก์ ํธ๋ฅผ ๊ฒฐํฉํด์ ๋ค์ํ ์ํฉ์ ๋์ฒํ ์ ์๋๋ก ๊ฐ๋ฐ๋จ.
์๋ธ ํ๋ก์ ํธ๋ผ๋ ์๋ฏธ๋ฅผ ๊ฐ์ฅ ์ฝ๊ฒ ์ดํดํ ์ ์๋ ๋ฐฉ๋ฒ์
๋ณ๋์ ์ค์ ์ด ์กด์ฌํ ์ ์๋ค๋ ๊ฐ๋
์.
Spring Legacy Project๋ก ์์ฑํ ์์ ์ ๊ฒฝ์ฐ์๋ servlet-context.xml๊ณผ
root-context.xml๋ก ์ค์ ํ์ผ์ด ๋ถ๋ฆฌ๋ ๊ฒ์ ๋ณผ ์ ์์ต๋๋ค.
์คํ๋ง MVC๊ฐ ์๋ธ ํ๋ก์ ํธ์ด๋ฏ๋ก ๊ตฌ์ฑ ๋ฐฉ์์ด๋ ์ค์ ์ญ์ ์กฐ๊ธ ๋ค๋ฅด๋ค๊ณ ๋ณผ ์ ์์
Spring MVC ์ค์ ์ servlet-context.xml or ServletConfig.class์
Spring Core and MyBatis ์ค์ ์ root-context.xml or RootConfig.Class์ ํจ
์คํ๋ง MVC ํ๋ก์ ํธ๋ฅผ ๊ตฌ์ฑํด์ ์ฌ์ฉํ๋ค๋ ์๋ฏธ๋ ๋ด๋ถ์ ์ผ๋ก๋ root-context.xml๋ก ์ฌ์ฉํ๋ ์ผ๋ฐ
Java ์์ญ(ํํ POJO(Plain Old Java Object))๊ณผ servlet-context.xml๋ก ์ค์ ํ๋ Web ๊ด๋ จ ์์ญ์
๊ฐ์ด ์ฐ๋ํด์ ๊ตฌ๋ํจ.
WebApplicationContext๋ผ๋ ์กด์ฌ๋ ๊ธฐ์กด์ ๊ตฌ์กฐ์ MVC์ค์ ์ ํฌํจํ๋ ๊ตฌ์กฐ๋ก ๋ง๋ค์ด์ง
์คํ๋ง์ ์๋ ๋ชฉ์ ์์ฒด๊ฐ ์น ์ ํ๋ฆฌ์ผ์ด์
์ ๋ชฉ์ ์ผ๋ก ๋์จ ํ๋ ์์ํฌ๊ฐ ์๋๊ธฐ ๋๋ฌธ์
๋ฌ๋ผ์ง๋ ์์ญ์ ๋ํด์๋ ์์ ํ ๋ถ๋ฆฌํ๊ณ ์ฐ๋ํ๋ ๋ฐฉ์์ผ๋ก ๊ตฌํ๋จ
IDE๋ด Spring Legacy Project๋ฅผ ์ด์ฉํด์ ex01์ ์์ฑ ํ๋ก์ ํธ๋ Spring MVC Project๋ก ์์ฑํจ
ํจํค์ง๋ช
์ ๊ธฐ์กด๊ณผ ๋์ผํ๊ฒ com.crow.controller์ง์
์์ฑ๋ ํ๋ก์ ํธ๋ ์คํ๋ง 3๋ฒ์ ์ด๋ฏ๋ก pom.xml์ 5.0.7๋ฒ์ ์ผ๋ก ๋ณ๊ฒฝํจ
์ด๋ ์๋ฐ ๋ฒ์ ์ญ์ 1.8๋ก ๋ณ๊ฒฝํจ
maven์ ์ปดํ์ผ ์ต์
์ 1.8๋ฒ์ ์ผ๋ก ๋ณ๊ฒฝ
ex00์ฒ๋ผ lombok๊ธฐ๋ฅ์ ์ด์ฉํ๊ธฐ ์ํด์ 1.18๋ฒ์ ์ lombok๋ ์ถ๊ฐํด์ค
javax.servlet๋ฒ์ ๋ 3.1.0์ผ๋ก ๋ณ๊ฒฝ
์์ ๋ณ๊ฒฝ์ ์ ์ถ๊ฐํ ์ ์ฅํ๋ค Maven ๋ฉ๋ด์์ update project๋ฅผ ํด์ค์ ๋ฌธ์ ๊ฐ ์๋์ง ํ์ธ
tomcat 9๋ฒ์ ์ ์ฌ์ฉํด์
http://localhost:8080/controller ๊ฒฝ๋ก์ home.htmlํ์ด์ง๊ฐ ๋จ๋์ง ํ์ธ
๋ํ ์น ํ๋ก์ ํธ๋ ๊ฐ๋ฅํ๋ฉด ์ ๋ ๊ฒฝ๋ก๋ฅผ ์ด์ฉํ๋ ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ๋ฐ๋์งํจ.
Tomcat์ 'Modules'๋ฉ๋ด๋ฅผ ์ด์ฉํด์ '/'๊ฒฝ๋ก๋ก ํ๋ก์ ํธ๊ฐ ์คํ๋ ์ ์๋๋ก ์ฒ๋ฆฌ
ํน์ ํด๋น Properties์ Web Project Settings ์์ฑ์ '/'๋ก ์ง์
ํ๋ก์ ํธ์ ๊ฒฝ๋ก(Context Path)๋ฅผ ์์ ํ ๋ค์๋ '/'๊ฒฝ๋ก๊ฐ ์ธ์๋๋์ง Tomcat์ ์ฌ์์ํด์ ํ์ธํด๋ณผ๊ฒ.