๋ถ๋ฅ ์ ์ฒด๋ณด๊ธฐ (125) ์ธ๋ค์ผํ ๋ฆฌ์คํธํ ๋์ปดํ์ผ๋ฌ WARํ์ผ๋ง ์๋ค๋ฉด? ๋์ปดํ์ผ๋ฌ๋ก JAVA ํ์ผ ๋ณต์ 100%๋ ์๋จ spring - MemberController 1. @Controller @RequeestMapping("/member/*") => ๊ธฐ๋ฅ๋ณ ๊ณตํต ์ฃผ์ 2. ์คํ๋ง์์๋ URI๋ฅผ ๋ถ์ํด์ ์์ฒญ(Method)์ ๋ฐ๋ผ ์ ๋นํ ์ปจํธ๋กค๋ฌ๋ฅผ ์ฐ๊ฒฐ ํด์ค = value ๊ฐ์ด ๊ฐ์๋ RequestMethod๊ฐ ๋ค๋ฅด๋ฉด ๊ตฌ๋ถ ๊ฐ๋ฅํจ * ํ๊ธ์ฒ๋ฆฌ * ์ธ์ ๊ฐ์ด ์์ผ๋ฉด ๋ก๊ทธ์ธ ํ์ด์ง๋ก ์ด๋(jstl) / (javascript) * pageContext.request.contextPath : ๋ด ํ์ฌ ๋ฌธ์์ ์์น๋ฅผ ๊ธฐ์ค์ผ๋ก ๊ฒฝ๋ก๋ฅผ ์ธ์ SPRING - bean grape๊ฐ ์๋ฐ ๋ *bean grape์ ์๋ฌด๊ฒ๋ ์๋ฐ ๋ Spring - mysql ์ฐ๊ฒฐ ํ ์คํธ *mysql ์ฐ๊ฒฐ ํ ์คํธ pom.xml์์ junit ๋ฒ์ 4.12๋ก ์์ Maven ์ ๋ฐ์ดํธ ํ Java Compiler, Project Facets ์์ Java ๋ฒ์ 1.8๋ก ์ฌ๋ฆฌ๊ธฐ src/test/java - topํ๋ก์ ํธ์ ํด๋์คํ์ผ ์์ฑ @Test ์ ๋ ธํ ์ด์ : Test ๋ฉ์๋๋ก ์ธ์ํ๊ณ ํ ์คํธํจ ํ ์คํธ๊ฐ ๋๋๋ฉด ์ฃผ์์ฒ๋ฆฌ ํน์ ์ ๋ ธํ ์ด์ ์ ์ญ์ ํด์ผํจ > ๊ณ์ ์คํ๋จ ์๋์์ฑ์ Test ์ด๋ ธํ ์ด์ ์ด ์์ผ๋ฉด java๋ฒ์ ์ ๋ค์ ์ฌ๋ ค์ค * ์๋ฒ๋ ๋๊ณ ctrl+f11 == jUnit์ผ๋ก ์คํ => ์ฝ์์ฐฝ, jUnit ํ์ธ 1. ๋๋ผ์ด๋ธ ๋ก๋ ํ ์คํธ 2. DB์ฐ๊ฒฐ * try~with ๊ตฌ๋ฌธ์ ์ฌ์ฉํ๋ฉด ์๋์ผ๋ก ์์ํด์ ๋จ jdk 1.7์ดํ๋ถํฐ ์ฌ์ฉ ๊ฐ๋ฅ Spring - ํ๋ ์์ํฌ ํ๋ ์ ์ํฌ(framework) : ์ด๋ค ๋์์ ๊ตฌ์ฑํ๋ ๋ผ๋ => SW : ๊ธฐ๋ฅ์ ๋ฏธ๋ฆฌ ํด๋์ค๋ ์ธํฐํ์ด์ค ํํ๋ก ๋ง๋ค์ด์ ์ ๊ณตํ๋ ํํ => ๋ชจ๋ ํ์์ด ๋์ผํ ๊ตฌ์กฐ์์ ๊ฒฐ๊ณผ๋ฌผ์ ์์ฑ ํ ์ ์์ => ๊ฐ๋ฐ ์๊ฐ์ด ๋จ์ถ๋จ * Spring 2.5 : ์ ๋ ธํ ์ด์ ์ ์ง์ (@Controller ๋ฑ) Spring 3.0 : Java ํด๋์ค๋ฅผ ์ค์ ํ์ผ๋ก ์ง์ Spring 4.0 : REST ๋ฐฉ์ ์ง์ ์คํ๋ง ํน์ง 1. EJB(enterprise java beans)๋ณด๋ค ๊ฐ๋ณ๊ณ ํ์ตํ๊ธฐ ์ฌ์ด ๊ฒฝ๋ ํ๋ ์์ํฌ 2. POJO(Plain Old Java Object) ๊ธฐ๋ฐ์ ๊ตฌ์ฑ = ์๋ฐ ํํ๋ก ๋ง๋ค์ด์ ธ ์์ 3. ์ ์ด์ ์ญํ(IoC, Inversion Of Control) ๊ธฐ์ ์ ์ฌ์ฉ => ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฝํ ๊ฒฐ.. Spring Legacy์ boot ์ฐจ์ด์ Spring์ 1. Spring(Legacy)์ 2. Spring boot ๋ก ๋๋ ์ง๋๋ฐ Spring Legacy : WAS ํ์ -------------------------------------------------------------------------------------------- MAVEN : ํ์ฌ๊น์ง ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉ๋จ(์ค๋ฌด) => ์๋ฃ๊ฐ ๋ง์ => ๊ตฌ๊ธ๋ง์ด ์ฌ์ : ๊ธฐ์กด์ ํ๋ก์ ํธ ์ดํด๊ฐ ์ฌ์ : ๋ชจ๋ ๋ฒ์ ์ ์คํ๋ง์ ์ฌ์ฉ ๊ฐ๋ฅ : ์ด๋ฐ ํ๊ฒฝ์ค์ ์ด ์ด๋ ค์ : WAS๋ฅผ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ๊ฒฐ๊ณผ ํ์ธ์ ์ํด ๋ง์ ๋ฆฌ์์ค๋ฅผ ์ฌ์ฉํด์ผํจ = ๋๋ฆผ Spring boot : WAS ํ์ X (๋ด์ฅ ์๋ฒ๊ฐ ์์) ---------------------------------------------------.. spring - Controllerํ ์คํธ SampleController๋ฅผ ๋ง๋ค๊ณ RequestMapping์ ํ๋ฉด web-inf/view ์๋์ doA๋ฅผ ์ฐพ์์ผ ํ๋๋ฐ ์์ ์ธ์์ด ์๋๋ค ์ฝ์์ฐฝ์๋ java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener maven dependencies ์ถ๊ฐ & ์๋ฒ ์ฌ์คํ ์ ์์ ์ผ๋ก WEB-INF/views ๋ฅผ ์ธ์ํจ! memberVO => json ๋ฐ์ดํฐ๋ก ๋ฐ๊ธฐ ์ปจํธ๋กค๋ฌ ์ด 5๊ฐ์ง 1. ์ฃผ์ ํธ์ถ 2. return์ผ๋ก ํธ์ถํ๊ธฐ 3. return(modelattribute, Model๊ฐ์ฒด๋ก ๋ฐ์ดํฐ ์ ๋ฌ) 4. ํ์ด์ง ์ด๋ ๋์ : redirect๋ก ํ์ด์ง ์ด๋(RedirectAttribute) - ์ผํ์ฑ๋ฐ์ดํฐ.. spring -(view, Service, Controller) ์ด๋ก ์ด ์ด์ ๊น์ง๋ MyBatis - DB์ฐ๊ฒฐ์ด์๋ค๋ฉด ์์ผ๋ก๋ view์ controller, service๋ฅผ ์ฐ๊ฒฐํ๋ ๊ฑธ ์ฐ์ต ์คํ๋ง์์ํ๋ ์ผ => ๊ฐ๋ฐ์๊ฐ ๋ก์ง์ ์ง์คํ๊ฒ ํด์ค! 1. URI๋ฅผ ๋ถ์ํด์ ์์ฒญ์ ๋ฐ๋ผ ์ ๋นํ ์ปจํธ๋กค๋ฌ๋ฅผ ์ฐ๊ฒฐํด์ค(JSP์์ ํ๋ .bo๋ .me ๋ฑ ๊ฐ์์ฃผ์๋ฅผ ์ค์ ํ ํ์ ์์) 2. ์ปจํธ๋กค๋ฌ์ ํ์ํ ๋ฉ์๋ ํธ์ถ 3. ์ปจํธ๋กค๋ฌ์์ ๋ฐ์ํ ๊ฒฐ๊ณผ ๋ฐ์ดํฐ๋ฅผ ๋ทฐ ํ์ด์ง๋ก ์ ๋ฌ(Model ๊ฐ์ฒด๋ฅผ ์ฌ์ฉ) = JSP์์ ์ ๋ณด๋ฅผ ์ ๋ฌ ํ ๋ ์ฌ์ฉํ request.setAttribute ์ฌ์ฉ์ํด๋ ๋จ 4. ์ ์ ํ ๋ทฐ ํ์ด์ง๋ฅผ ์ฐ๊ฒฐ 5. ํ๋ผ๋ฉํฐ๋ฅผ ์์ง(์๋์ผ๋ก ๋ฐ์์ค) ๊ฐ๋ฐ์๊ฐ ํ๋ ์ผ 1. ํน์ URI์ ๋์ํ๋ ์ปจํธ๋กค๋ฌ๋ฅผ ์ค๊ณ 2. ์๋น์ค๊ฐ์ฒด ์์ฑ 3. DAO ๊ฐ์ฒด ์์ฑ 4. ์ปจํธ๋กค๋ฌ ์.. ์ด์ 1 ยทยทยท 4 5 6 7 8 9 10 ยทยทยท 16 ๋ค์