Spring JPA Hibernate์์ Entity์ ์์์ ๋ํด ๊ฒ์ํ์ฌ ๊ณต๋ถํ๋ ์ค ์ถ๊ฐ์ ์ผ๋ก ๊ถ๊ธํ ๋ถ๋ถ์ด ์๊ฒจ ์ ๋ฆฌํด๋ณธ๋ค. @MappedSuperClass ์ฌ๋ฌ ์ํฐํฐ์ ๊ณตํต์ ์ผ๋ก ์ฌ์ฉ๋๋ ํ๋๋ฅผ ์์๋ฐ๊ธฐ ์ํด ์ฌ์ฉํ๋ค. ์ํฐํฐ๋ค์ด ์์๋ฐ์ ์ฌ์ฉํ ํด๋์ค ์์ ์ ์ธํ๊ฒ ๋๋ฉด ํด๋น ํด๋์ค๋ Table๊ณผ ๋งคํ๋์ง ์๊ณ ๋จ์ํ ํ๋๋ฅผ ์์๋ฐ๊ธฐ ์ํ ํด๋์ค๊ฐ ๋๋ค. ์ด ํด๋์ค๋ ์์ฑํด์ ์ฌ์ฉํ ์ผ์ด ์์ผ๋ฏ๋ก ์ถ์ ํด๋์ค ์ ์ธ์ด ๊ถ์ฅ๋๋ค. @Embeddable (์๋ต ๊ฐ๋ฅํ๋ค! default ์) ์๋ฅผ ๋ค์ด Wardrobe Entity ๋ด์ ํน์ Writer ์ ๋ณด(String memberName, String memberId) ๊ฐ ๋ด๊ธด๋ค๊ณ ํด๋ณด์. ๊ทธ๋ฐ๋ฐ memberName, memberId๋ฅผ ๋ฐ๋ก ๋๋ฉด..
HTTP ์์ฒญ ๋ฉ์์ง HTTP ์์ฒญ ๋ฉ์์ง๋? ๋ธ๋ผ์ฐ์ ๊ฐ ์๋ฒ์๊ฒ ํน์ ๊ฐ์ฒด๋ฅผ ์์ฒญํ๊ธฐ ์ํด ์ฌ์ฉํ๋ ๋ฉ์์ง ์ํํ ๋ฐ์ดํฐ ์ก์์ ์ ์ํด ์ฝ์๋ ํํ๋ฅผ ๊ฐ์ง๊ณ ์์ HTTP ์์ฒญ ๋ฉ์์ง์ ํน์ง ๋ฉ์์ง๊ฐ ์ผ๋ฐ ASCII ๊ธฐ๋ฐ ํ ์คํธ๋ก ์ด๋ฃจ์ด์ง ๊ฐ ์ค์ Carriage Return & Line Feed๋ก ๊ตฌ๋ณ๋จ ์ฒซ์ค์ ์์ฒญ๋ผ์ธ์ด๋ผ๊ณ ๋ถ๋ฅด๊ณ , ์ดํ ์ค๋ค์ ํค๋๋ผ์ธ์ด๋ผ๊ณ ํจ ํค๋๋ผ์ธ ์ดํ๋ก Entity Body๊ฐ ์กด์ฌํ์ง๋ง GET์์๋ ๋น์ด์์ ์์ฒญ๋ผ์ธ Method, URL, HTTP ๋ฒ์ ์ ๋ํ๋ด๋ ์ธ๊ฐ์ง ํ๋๋ฅผ ๊ฐ์ง Method : HTTP ๋ฉ์๋๊ฐ ๋ฌด์์ธ์ง ๋ํ๋ URL : ๊ฐ์ฒด์ ์์น๋ฅผ ๋ํ๋ HTTP ๋ฒ์ : ๋ธ๋ผ์ฐ์ ์ HTTP ๋ฒ์ ์ ๋ํ๋ ํค๋๋ผ์ธ ๊ต์ฅํ ๋ค์ํ Header๋ฅผ ๋ช ์ํ ์ ์์ HTT..
1xx : ์ ๋ณด ์๋ต 1xx : ์์ฒญ์ ๋ฐ์์ผ๋ฉฐ ํ๋ก์ธ์ค๋ฅผ ๊ณ์ ์งํํจ 100 :์์ฒญ์ ์์ ๋ถ๋ถ ์ผ๋ถ๊ฐ ๋ฐ์๋ค์ฌ์ก์ผ๋ฉฐ, ํด๋ผ์ด์ธํธ๋ ๋๋จธ์ง๋ฅผ ๊ณ์ ์ด์ด์ ๋ณด๋ด์ผ ํจ์ ์๋ฏธ 101 :์์ฒญ์๊ฐ ์๋ฒ์ ํ๋กํ ์ฝ ์ ํ์ ์์ฒญํ์ผ๋ฉฐ, ์๋ฒ์์ ์ด๋ฅผ ์น์ธํ๋ ์ค์ ์๋ฏธ 102 :์๋ฒ๊ฐ ์์ฒญ์ ์์ ํ์ฌ ์ฒ๋ฆฌํ๊ณ ์์ผ๋, ์ ํํ ์๋ต์ ์๋ ค์ค ์ ์์์ ์๋ ค์ค 2xx : ์ฑ๊ณต ์๋ต 2xx : ์์ฒญ์ ์ฑ๊ณต์ ์ผ๋ก ๋ฐ์์ผ๋ฉฐ ์ธ์ํ๊ณ ์์ฉํ์์ 200 : ์์ฒญ์ด ์ฑ๊ณต์ ์ผ๋ก ์๋ฃ๋์์, ์์ฒญ๋ HTTP ๋ฉ์๋๋ง๋ค ์๋ฏธ๊ฐ ๋ฌ๋ผ์ง 201 : ์ด๋ ํ ์์ฑ ์์ ์ ์์ฒญ๋ฐ์์ผ๋ฉฐ, ์ฑ๊ณตํ์์ 202 : ์์ฒญ์ ๋ฐ์๋ค์ฌ์ก์ผ๋, ๊ทธ์ ์ํ์ฌ ํ๋ํ ์ ์์ 203 : ์์ฒญ์ ์ฑ๊ณตํ์์ง๋ง, ์์ฒญ์ ๋ํ ๊ฒ์ฆ์ด ๋์ง ์์ ์ํ๋ฅผ ์๋ฏธ 204 ..
REST์ ๊ฐ๋ REST๋? Representational State Transfer์ ์ฝ์ ์น์ ๊ธฐ์กด ๊ธฐ์ ๊ณผ HTTP ํ๋กํ ์ฝ์ ๊ทธ๋๋ก ํ์ฉํ๋ ๋ฐ์ดํฐ ์ก์์ ์ํคํ ์ฒ ์คํ์ผ ๋คํธ์ํฌ ์์์ Client์ Server ์ฌ์ด์ ํต์ ๋ฐฉ์ ์ค ํ๋ ์์์ ์ด๋ฆ์ผ๋ก ๊ตฌ๋ถํ์ฌ ํด๋น ์์์ ์ํ(์ ๋ณด)๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ๊ฒ์ ์๋ฏธ JSON ํน์ XML์ ํตํด ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ๊ฒ์ด ์ผ๋ฐ์ REST์ ๊ตฌ์ฒด์ ์ธ ๊ฐ๋ HTTP URI๋ฅผ ํตํด ์์์ ๋ช ์ํ๊ณ , HTTP Method๋ฅผ ํตํด ํด๋น ์์์ ๋ํด CRUD Operation์ ์ ์ฉํ๋ ๊ฒ์ ์๋ฏธ ์ฆ, ์์ ๊ธฐ๋ฐ์ ๊ตฌ์กฐ(ROA) ์ค๊ณ์ ์ค์ฌ์ Resource๊ฐ ์์ผ๋ฉฐ, HTTP Method๋ฅผ ํตํด Resource๋ฅผ ์ฒ๋ฆฌํ๋๋ก ์ค๊ณ๋ ์ํคํ ์ฒ CRUD Operatio..
์คํ๋ง์ด ์ ํ์ํ๊ฒ ๋์์๊น? ์คํ๋ง ํ๋ ์์ํฌ๋ ๋ก๋ ์กด์จ์ด 2004๋ ์ ๋ง๋ ์คํ์์ค ํ๋ ์์ํฌ์ ๋๋ค. ์คํ๋ง ํ๋ ์์ํฌ ์ด์ ์ ์๋ฐ ๊ธฐ๋ฐ์ ์ํฐํ๋ผ์ด์ฆ ์ดํ๋ฆฌ์ผ์ด์ ์ ๋๋ถ๋ถ EJB(Enterprise Java Beans)๋ก ๊ฐ๋ฐ๋์์์ฃ . ํ์ง๋ง EJB๋ ํ์ต์ ๋ง์ ์๊ฐ์ด ํ์ํ๊ณ , ๊ฐ๋ฐ ๋ฐ ์ ์ง๋ณด์๊ฐ ์ด๋ ต๋ค๋ ์ , ๊ทธ๋ฆฌ๊ณ EJB ์ปดํฌ๋ํธ๋ฅผ ๋ฐฐ์นํ๊ธฐ ์ํ WAS(Web Application Server)๊ฐ ๊ต์ฅํ ๊ณ ๊ฐ์ ์ฅ๋น์๊ธฐ์ ๋ง์ ๊ฐ๋ฐ์๋ค์ ์ธ๋ฉด์ ๋ฐ์์ต๋๋ค. ๋ฌผ๋ก EJB์ ๋ฌธ์ ๊ฐ ์๋ค๋ ๊ฒ์ ์๋๋๋ค. ๊ทธ๋ ๊ธฐ์ ๊ธด ์๊ฐ๋์ ์ฌ์ฉ๋ฌ๊ฒ ์ฃ . ํ์ง๋ง EJB์ ๋ฌธ์ ์ ์ EJB ๋ต๊ฒ ์ฌ์ฉํ๋ ๊ฒ์ด ๊ต์ฅํ ์ด๋ ต๋ค๋ ์ ์ ๋๋ค. EJB๋ฅผ ์ ๋๋ก ์ฌ์ฉํ๋ ค๋ฉด EJB์ ์ฑ๋ฅ์ ์ ์งํด์ฃผ๊ณ , ๋ค์ํ ๋์์ธ ํจํด์ ..