๐ฃ Spring/JPA
* ํด๋น ๊ธ์ ๊น์ํ ๊ฐ์ฌ๋์ ์๋ฐ ORM ํ์ค JPA ํ๋ก๊ทธ๋๋ฐ - ๊ธฐ๋ณธ ํธ์ ๋ณด๊ณ ๊ฐ๋จํ๊ฒ ์ ๋ฆฌํ ๊ธ์
๋๋ค.(์์ธํ ๋ด์ฉ์ ๊ฐ์๊ฐ ์ต๊ณฑ๋๋ค. ๊ฐ์ ์ฌ์ธ์) ์๋ฐ ORM ํ์ค JPA ํ๋ก๊ทธ๋๋ฐ - ๊ธฐ๋ณธํธ ๊ฐ์ - ์ธํ๋ฐ ํ์ฌ๋์ ๋งค์ผ ๋ฐ์ ์์ค์ ํ์์ด๋ผ๋ ๋ค๋๊น ์๊ฐํ๋๋ฐ ๋ง์นจ JPA ๊ฐ์๊ฐ ์๊ฒจ์ ๊ฟ ํ์ด๋ฐ์ด๋ค์. ์ ๋ ์ด ์ ์ JPA ์ฑ
์ ๋ณด๊ณ ๊ณต๋ถ ํ์๋๋ฐ์ ๊ถ๊ธํ๋ ์ , ์
๋ฌด์ ์ ์ฉํ๋ฉฐ ๊ณ ๋ฏผํ๊ณ ํด๊ฒฐํ www.inflearn.com ์์ ๊ด๊ณ ๋งคํ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์๋ ๊ฐ์ฒด ์งํฅ ์ธ์ด์ ์์์ด๋ผ๋ ๊ฐ๋
์ด ์๋ค. ๋์ ์ํผํ์
, ์๋ธํ์
์ด๋ผ๋ ๋ชจ๋ธ๋ง ๊ธฐ๋ฒ์ด ๊ทธ๋๋ง ๋น์ทํ์ฌ ๋์ ์ฌ์ฉํ๋ค. ๋ฌผ๋ก , ์ด๋ฅผ ์ค์ ๋ฌผ๋ฆฌ ๋ชจ๋ธ์ธ ํ
์ด๋ธ๋ก ๊ตฌํํ๊ธฐ ์ํด ๋ค์ ์ธ ๊ฐ์ง ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๋ค. ์กฐ์ธ ์ ๋ต ๋จ์ผ ํ
์ด..
๐ฃ Spring/JPA
* ํด๋น ๊ธ์ ๊น์ํ ๊ฐ์ฌ๋์ ์๋ฐ ORM ํ์ค JPA ํ๋ก๊ทธ๋๋ฐ - ๊ธฐ๋ณธํธ์ ๋ณด๊ณ ๊ฐ๋จํ๊ฒ ์ ๋ฆฌํ ๊ธ์
๋๋ค.(์์ธํ ๋ด์ฉ์ ๊ฐ์๊ฐ ์ต๊ณฑ๋๋ค. ๊ฐ์ ์ฌ์ธ์) ์๋ฐ ORM ํ์ค JPA ํ๋ก๊ทธ๋๋ฐ - ๊ธฐ๋ณธํธ ๊ฐ์ - ์ธํ๋ฐ ์ ๋ ์ผ์ํ์ด ์๋๋ผ ํ์ํ์ธ๊ฐ๋ด์^^ ํ์ฉํธ ๋์ด๊ฐ๋ค 30% ์ ๋ ๋ฃ๊ณ ๋์ ํ ๋ต๋ตํด์ ๊ธฐ๋ณธํธ์ ๋ค์ด๋ฒ๋ ธ๋ค์^^. ํ์ฃผ ํ์ฃผ ๊น์ํ๋ ๊ฐ์ ๋ค์ผ๋ ๋ ์
๋๋ ๋ชจ์ต์ ์ค์ค๋ก ๋๋๋๋ค. ํนํ ์ค www.inflearn.com ๋ค๋์ผ ๊ด๊ณ ๋ค๋์ผ ๋จ๋ฐฉํฅ ์ฐ๊ด๊ด๊ณ์ ์ฃผ์ธ์ ๋ค ์ชฝ์ ์๋ค. "๋ค"์ชฝ์์ "์ผ"์ชฝ์ผ๋ก๋ง ์ฐธ์กฐ๊ฐ ๊ฐ๋ฅํ๋ค. @ManyToOne @JoinColumn(name = "TEAM_ID") private Team team; ์์ ๊ฐ์ด _@JoinColumn_์ ํตํด ๊ด๊ณ๋ฅผ ์ค์ ํ ..
๐ฃ Spring/JPA
* ํด๋น ๊ธ์ ๊น์ํ ๊ฐ์ฌ๋์ ์๋ฐ ORM ํ์ค JPA ํ๋ก๊ทธ๋๋ฐ - ๊ธฐ๋ณธํธ์ ๋ณด๊ณ ๊ฐ๋จํ๊ฒ ์ ๋ฆฌํ ๊ธ์
๋๋ค.(์์ธํ ๋ด์ฉ์ ๊ฐ์๊ฐ ์ต๊ณฑ๋๋ค. ๊ฐ์ ์ฌ์ธ์) ์๋ฐ ORM ํ์ค JPA ํ๋ก๊ทธ๋๋ฐ - ๊ธฐ๋ณธํธ ๊ฐ์ - ์ธํ๋ฐ ํ์ฌ๋์ ๋งค์ผ ๋ฐ์ ์์ค์ ํ์์ด๋ผ๋ ๋ค๋๊น ์๊ฐํ๋๋ฐ ๋ง์นจ JPA ๊ฐ์๊ฐ ์๊ฒจ์ ๊ฟ ํ์ด๋ฐ์ด๋ค์. ์ ๋ ์ด ์ ์ JPA ์ฑ
์ ๋ณด๊ณ ๊ณต๋ถ ํ์๋๋ฐ์ ๊ถ๊ธํ๋ ์ , ์
๋ฌด์ ์ ์ฉํ๋ฉฐ ๊ณ ๋ฏผํ๊ณ ํด๊ฒฐํ www.inflearn.com Intro JPA๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด ๊ฐ์ฒด ์งํฅ์์์ ์ฐ๊ด๊ด๊ณ์ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์์ ์ฐ๊ด๊ด๊ณ๋ฅผ ์ ๋๋ก ๋งคํํ๋ ๊ฒ์ด ํต์ฌ์ด๋ค. ๋ฐ๋ผ์ ๊ฐ์ฒด ์งํฅ์์ ํ
์ด๋ธ์ ๋ํ ์ฐ๊ด๊ด๊ณ๋ฅผ ์ ๋๋ก ์ดํดํ ํ์๊ฐ ์๋๋ฐ, ์ด๋ ์ฉ์ด๋ถํฐ ์ ๋๋ก ์์์ผ ํ๋ค. ์ฐ์ ๊ฐ ์ํฐํฐ์ ์
์ฅ์์..
๐ฃ Spring/JPA
* ํด๋น ๊ธ์ ๊น์ํ ๊ฐ์ฌ๋์ ์๋ฐ ORM ํ์ค JPA ํ๋ก๊ทธ๋๋ฐ - ๊ธฐ๋ณธํธ์ ๋ณด๊ณ ๊ฐ๋จํ๊ฒ ์ ๋ฆฌํ ๊ธ์
๋๋ค.(์์ธํ ๋ด์ฉ์ ๊ฐ์๊ฐ ์ต๊ณฑ๋๋ค. ๊ฐ์ ์ฌ์ธ์) ์๋ฐ ORM ํ์ค JPA ํ๋ก๊ทธ๋๋ฐ - ๊ธฐ๋ณธํธ ๊ฐ์ - ์ธํ๋ฐ JPA ๋ฅผ ๊ณต๋ถํ๊ณ ์ฑ
์ ๋ณด๋ฉฐ ์ด๋ ค์ ๋ ๋ด์ฉ์ ์์ฃผ๋ก ๋จผ์ ๋ณด์์ต๋๋ค. ์์์ 1:1 ๊ณผ์ธํด์ฃผ๋ ๊ฒ ๊ฐ์ด ์์ํ๊ณ ์ดํด ์๋๋ ์ค๋ช
, ์์ (์ฝ๋)๊ฐ ๋๋ฌด ์ข์์ต๋๋ค. ์ด๋ ๊ฒ ํ๋ ์ ๋งคํจ์์ด ๋ชจ๋ www.inflearn.com @Entity @Entity๊ฐ ๋ถ์ ํด๋์ค๋ JPA๊ฐ ๊ด๋ฆฌํ๋ ์ํฐํฐ๋ผ๊ณ ํ๋ฉฐ, JPA๋ฅผ ํตํด์ ํ
์ด๋ธ๊ณผ ๋งคํํ ํด๋์ค๋ ๋ฐ๋์ ์ด ์ด๋
ธํ
์ด์
์ ๋ถ์ฌ์ผ ํ๋ค. ์ด๋
ธํ
์ด์
์ฌ์ฉ ์ ์ฃผ์ํ ์ ์ ์๋์ ๊ฐ๋ค. ๊ธฐ๋ณธ ์์ฑ์๋ ํ์๋ค. final ํด๋์ค, enum, int..
๐ฃ Spring/Spring ๊ธฐ๋ณธ
WebConfig _WebConfig_๋ ์น ๊ตฌ์ฑ์ ๋ํด ์ง์ ํ๋ ๋ด์ฉ์ด ๋ด๊ฒจ์๋ ์ค์ ํ์ผ์ ๋งํ๋ค. _WebConfig_๋ ๊ตฌํ์ฒด์ด๊ณ _WebMvcConfigure_ ์ธํฐํ์ด์ค๋ฅผ ๊ตฌํํ์ฌ ์์ฑํ ์ ์๋ค. ์ด _WebConfig_๋ฅผ ๋ค๋ฃจ๋ฉด ์ข์ ์ ์ Controller ๋จ์ผ๋ก ์ค๊ธฐ ์ ์ด๋ ์ค๊ณ ๋ ํ, ํน์ ๊ทธ ์ฌ์ด์ ์ธํฐ์
ํฐ๋ฅผ ๋๋ ๋ฑ ๋ค์ํ ๋ฐฉ์์ผ๋ก ์ปค์คํ
ํ๋ ๊ฒ์ด ๊ฐ๋ฅํ๋ค. ์ฃผ๋ก ์์ฃผ ์ฌ์ฉํ๋ ๊ฒ์ _View Controller_, _interceptors_, _ArgumentResolvers_์ธ๋ฐ, ์ด๋ค ๋ฐฉ์์ผ๋ก ๋ด ์
๋ง์ ๋ง๋๋ก ๋ค๋ฃฐ ์ ์๋ ์ง ํ๋ฒ ์ดํด๋ณด์. View Controller _View Controller_๋ URL ๋งคํ์ ๊ฐ๋จํ๊ฒ ์ฒ๋ฆฌํ ์ ์๋๋ก ํ๋ค. ์ฌ์ฉํจ์ผ๋ก์จ ์ป์ ์ ..
๐ฃ Spring/Spring ๊ธฐ๋ณธ
์คํ๋ง์ ๊ธฐ๋ณธ ์์ธ ์ฒ๋ฆฌ ๋ฐฉ๋ฒ Spring์ ์๋ฌ ์ฒ๋ฆฌ๋ฅผ ์ํด ๊ธฐ๋ณธ์ ์ผ๋ก _BasicErrorConroller_๋ฅผ ๊ตฌํํด ๋์๋ค. ๊ทธ๋์ ๋ง์ฝ ๋ณ๋๋ก ์๋ฌ์ ๊ด๋ จ๋ ์ค์ ์ ํด๋์ง ์๋๋ค๋ฉด, WAS์์ _/error_๋ก ์๋ฌ ์์ฒญ์ ๋ค์ ๋ณด๋ธ๋ค. ๊ทธ ํ๋ฆ์ ์๋์ ๊ฐ๋ค. _WAS(ํฐ์บฃ)_ โก๏ธ _ํํฐ_ โก๏ธ _์๋ธ๋ฆฟ(DispatcherServlet)_ โก๏ธ _์ธํฐ์
ํฐ_ โก๏ธ _์ปจํธ๋กค๋ฌ_ โก๏ธ _์์ธ ๋ฐ์_ โก๏ธ _์ธํฐ์
ํฐ_ โก๏ธ _์๋ธ๋ฆฟ(DispatcherServlet)_ โก๏ธ _ํํฐ_ โก๏ธ _WAS(ํฐ์บฃ)_ โก๏ธ _์๋ธ๋ฆฟ(DispatcherServlet)_ โก๏ธ _์ธํฐ์
ํฐ_ โก๏ธ _์ปจํธ๋กค๋ฌ(BasicErrorController)_ ์ค์ํ ์ ์ ์๋ฌ๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํด _WAS_๋ก ๊ฐ๋ค๊ฐ ๋ค์ํ๋ฒ ์ปจํธ๋กค๋ฌ๋ฅผ ..
๐ฃ Spring/Spring ๊ธฐ๋ณธ
Dispatcher - Servlet์ด๋? Dispatcher Servlet์ ์์, _Servlet_์ด๋ ์๋ฐ๋ฅผ ์ฌ์ฉํ์ฌ ์น ํ์ด์ง๋ฅผ ๋์ ์ผ๋ก ์์ฑํ๋ ์๋ฒ ์ธก ํ๋ก๊ทธ๋จ ํน์ ๊ทธ ์ฌ์์ ๋ปํ๋ค. ์๋ฐ์ Servlet์ ์น ์๋ฒ์ ์ฑ๋ฅ์ ํฅ์์ํค๊ธฐ ์ํด์ ์ฌ์ฉ๋๋๋ฐ, ๊ฐ๋จํ๊ฒ ์๊ฐํ์๋ฉด ํด๋ผ์ด์ธํธ์ ์์ฒญ์ ์ฒ๋ฆฌํ๊ณ ๊ฒฐ๊ณผ๋ฅผ ๋ฐํํ๋ ์น ํ๋ก๊ทธ๋๋ฐ ๊ธฐ์ ์ด๋ค. _Dispatcher-Servlet_๋ํ _Servlet_์ ์ผ์ข
์ผ๋ก ๊ทธ ์ญํ ์ ์ดํด๋ณด์๋ฉด Dispatcher์ ์๋ฏธ๋ฅผ ์ฐพ์๋ณด๋ฉด ๋๋ค. ์ด๋ "๊ธํ์"๋ผ๋ ๋ป์ผ๋ก ๊ฐ์ฅ ๋จผ์ ์์ฒญ์ ๋ฐ์ ์ฒ๋ฆฌํ ํจ์์ธ ์ปจํธ๋กค๋ฌ๋ฅผ ์ ํด์ฃผ๋ ์ญํ ์ ๊ฐ์ง๋ค. ์ฆ, _Dispatcher-Servlet_์ HTTP ํ๋กํ ์ฝ๋ก ๋ค์ด์ค๋ ๋ชจ๋ ์์ฒญ์ ๊ฐ์ฅ ๋จผ์ ๋ฐ์์ ์ ํฉํ ์ปจํธ๋กค๋ฌ..
๐ฃ Spring/JPA
* ํด๋น ๊ธ์ ๊น์ํ ๊ฐ์ฌ๋์ ์๋ฐ ORM ํ์ค JPA ํ๋ก๊ทธ๋๋ฐ - ๊ธฐ๋ณธํธ์ ๋ณด๊ณ ๊ฐ๋จํ๊ฒ ์ ๋ฆฌํ ๊ธ์
๋๋ค.(์์ธํ ๋ด์ฉ์ ๊ฐ์๊ฐ ์ต๊ณฑ๋๋ค. ๊ฐ์ ์ฌ์ธ์) ์๋ฐ ORM ํ์ค JPA ํ๋ก๊ทธ๋๋ฐ - ๊ธฐ๋ณธํธ ๊ฐ์ - ์ธํ๋ฐ ์ ๋ ์ผ์ํ์ด ์๋๋ผ ํ์ํ์ธ๊ฐ๋ด์^^ ํ์ฉํธ ๋์ด๊ฐ๋ค 30% ์ ๋ ๋ฃ๊ณ ๋์ ํ ๋ต๋ตํด์ ๊ธฐ๋ณธํธ์ ๋ค์ด๋ฒ๋ ธ๋ค์^^. ํ์ฃผ ํ์ฃผ ๊น์ํ๋ ๊ฐ์ ๋ค์ผ๋ ๋ ์
๋๋ ๋ชจ์ต์ ์ค์ค๋ก ๋๋๋๋ค. ํนํ ์ค www.inflearn.com JPA์ ์ญํ ๊ณผ ํ์ ๋ฐฐ๊ฒฝ ๐ถ JPA์ ์ญํ JPA๋ ๊ฐ๋ฐ์ ๋์ SQL๋ฌธ์ ์์ฑํด์ค๋ค. ๐ถ JPA๋ฅผ ์ค๋ฌด์์ ์ฌ์ฉํ ๋ ์ฐ๋ฆฌ๊ฐ ์ ๋๋ก ๋ชป์ฌ์ฉํ๋ ์ด์ 1๏ธโฃ ๊ฐ์ฒด์ ํ
์ด๋ธ์ ์ฌ๋ฐ๋ฅด๊ฒ ๋งคํํ๊ณ ์ค๊ณํ๋ ๋ฐฉ๋ฒ์ ๋ชฐ๋ผ์ 2๏ธโฃ JPA ๋ด๋ถ ๋์ ๋ฐฉ์์ ์ดํดํ์ง ๋ชปํด์ JPA..