์ค๋ ๊ณต๋ถํ ๋ด์ฉ celuveat ํ์ & ๊ฐ๋ฐ DB ์ธ๋ฑ์ค ๊ณต๋ถ ๐ญ ๋๋ ์ & ๋ฐฐ์ด ์ ์ค๋์ ์กฐ๊ธ ์ฌ์ ์ด ์์ด์ ๊ณต๋ถ๋ฅผ ๋ง์ด ํ์ง๋ ๋ชปํ๊ณ , ๋ด์ผ๊น์ง ๋ง๋ค์ด์ค์ผํ ๊ธฐ๋ฅ์ด ์์๋๋ฐ ๋ด์ผ ์๊ฐ์ด ์๋ ๊ฑฐ ๊ฐ์์ ๋ฐฉ๊ธ ๊ธ๊ธํ๊ฒ ๋ง๋ค๊ณ ์๋ค. ๋งจ๋ jpa๊ฐ ์ ๊ณตํด์ฃผ๋ ํ์ด์ง ๊ธฐ๋ฅ์ ์ฌ์ฉํ๋ค๊ฐ ์ง์ Pageable๊ณผ ๊ฐ์ ๊ฐ์ฒด๋ฅผ ๋ง๋ค๊ณ , ArgumentResolver๋ฅผ ๊ตฌํํ๋ฉฐ JPA ๋น์ทํ๊ฒ ๊ตฌํํด ๋ณด์๋๋ฐ ์ฌ๋ฏธ์์๋ค. (sort ๊ธฐ๋ฅ์ ์กฐ๊ธ ๋ณต์กํ ๊ฒ ๊ฐ๊ณ , ์์ง ํด๋น ๊ธฐ๋ฅ์ ํ์๊ฐ ์์ด์ ๋ง๋ค์ง ์์๋ค) ๐ฅ ๋ด์ผ ๊ณต๋ถํ ๋ด์ฉ celuveat ์ด๋๋ฏผ ํ๋ฉด ๋ฐฑ์ค DB ๊ณต๋ถ ์ค๋ ๊ณต๋ถํ ๋ด์ฉ ํฌ์คํ
์ค๋ ๊ณต๋ถํ ๋ด์ฉ celuveat ํ์ & ๊ฐ๋ฐ ๋ฐฑ์ค 2๋ฌธ์ DB ๊ณต๋ถ ํด์ผ์ง Configuration ์ Self invocation์ด ๋ฐ์ํ์ง ์๋ ์ด์ ๐ญ ๋๋ ์ & ๋ฐฐ์ด ์ ์ค๋๋ ํ๋ฃจ๊ฐ ๋ญ๊ฐ ์... ์ง๋๊ฐ๋ฒ๋ ธ๋ค. ์ง ์์ ์ฝ๋ ์ข ์ง๊ณ , ์ด์ ๊ฑฐ์ 12์๋ผ ํ๋์๊ฐ ์ ๋ ์ฑ
์ฝ๋ค ์์ผ๊ฒ ๋ค. ๊ทธ๋ฆฌ๊ณ Configuration Self invocation ๊ด๋ จํด์๋ ์ ๋ชจ๋ฅด๊ฒ ์ง๋ง... ๋ญ๊ฐ ์ผ๋ฐ์ ์ธ AOP๋ ๋ค๋ฅด๊ฒ ์ฒ๋ฆฌ๋๋ ๋ชจ์์ด๋ค. https://stackoverflow.com/questions/56917484/self-invocation-behaviour-in-configuration-vs-component-classes Self-invocation behaviour in @Configurat..
์ค๋ ๊ณต๋ถํ ๋ด์ฉ DB ๊ณต๋ถ ๐ญ ๋๋ ์ & ๋ฐฐ์ด ์ ๐ฅ ๋ด์ผ ๊ณต๋ถํ ๋ด์ฉ ํ๋ก์ ํธ ๊ฐ๋ฐ DB ๊ณต๋ถ ์ค๋ ๊ณต๋ถํ ๋ด์ฉ ํฌ์คํ
์ค๋ ๊ณต๋ถํ ๋ด์ฉ ํ ์ค ์ฝํ
๋ด๋ณด๊ธฐ? ๐ญ ๋๋ ์ & ๋ฐฐ์ด ์ ์ค๋์ ๋์ ์ค๋๋ผ ๋ฐ๋ก ๊ณต๋ถํ ์๊ฐ์ด ๊ฑฐ์ ์์๊ณ , ์์นจ์ ํ ์ค ์ฝํ
์ข ํ์ด๋ณด๊ณ ์๋ค. ์๊ณ ๋ฆฌ์ฆ ๋ชปํ๋ ๊ฑด ์๊ณ ์์๋๋ฐ, ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ํ์คํ ๋นจ๋ฆฌ ํด๋์ด์ผ๊ฒ ๋ค๋ ์๊ฐ์ด ๋ค์๋ค. ์ํ ๋ณด๋๋ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ด์ฉ ๋์ค๋๊น ๋จธ๋ฆฌ๊ฐ ์ด์ง์ด์ง.. ๊ทธ๋์ ๋ด์ผ๋ถํฐ๋ ์ธ๋ฑ์ค๋ ๋ฝ ์ค์ฌ์ ์ผ๋ก ์ด์ฌํ ๊ณต๋ถํด๋ณด๋ ค ํ๋ค. ์๊ณ ๋ฆฌ์ฆ์ ๋ญ... ํ๋ค๋ณด๋ฉด ๋๊ฒ ์ง ๋ชจ.. ใ
ใ
๐ฅ ๋ด์ผ ๊ณต๋ถํ ๋ด์ฉ ํ๋ก์ ํธ ๊ฐ๋ฐ DB ๊ณต๋ถ ์ค๋ ๊ณต๋ถํ ๋ด์ฉ ํฌ์คํ
์ค๋ ๊ณต๋ถํ ๋ด์ฉ ์
๋ฝ์ ํ๋ก์ ํธ 1์ฐจ ๋ฐ๋ชจ๋ฐ์ด MySQL ๋ฝ ์กฐ๊ธ ์คํํ๋ฉฐ ๊ณต๋ถ์ค ๐ญ ๋๋ ์ & ๋ฐฐ์ด ์ ์ค๋์ 1์ฐจ ๋ฐ๋ชจ๋ฐ์ด ํ๋ค. ๋งจ ์ฒ์ ์นดํ์ธ ํ์ด ๋ฐํ๋ฅผ ๋๋ฌด ์ ํด์ ๋ง์ง๋ง์ธ ์ฐ๋ฆฌ๋ ํ.. ํฐ์ผ๋ฌ๋ค ํ๊ณ ์์๋๋ฐ, ๋ง์ ๋๋๊ณ ๋ณด๋ ๋ก์ด์ค๋ ์ ๋ ๋ฏธ๊ฐ ๋๋ฌด ๋ฐํ์ ๋๋ต์ ์ ํด์ค์ ์ฐ๋ฆฌ ํ๋ ๊ต์ฅํ ์ข์๋ ๊ฒ ๊ฐ๋ค. ๊ทธ๋ฌ๋ฉด์ ๋ฐ์ดํฐ ์กฐํ ๊ณผ์ ์ ๋ํ ๊ณ ๋ฏผ๋ ์งํํ๊ฒ ๋์๋๋ฐ, ๋ค์ด๋ฒ API์ ์ ๋ณด๋ฅผ ๊ทธ๋๋ก DB์ ์ ์ฅํ๋ ๊ฒ์ด ๋ฌธ์ ๊ฐ ๋์ด์, ์ด๋ฅผ ๊ณต๊ณต๋ฐ์ดํฐ๋ฅผ ํตํด ์์์ ๋ค์ ๋ชจ๋ ์ ์ฅํ ํ, ๋ฑ๋ก๋ ์์์ ๋ค๊ณผ ๋น๊ตํด์ ์ ๊ณตํ๋ ๋ฐฉ์์ผ๋ก ๋ณ๊ฒฝํ๊ณ ์ ํ๋ค. ๊ทธ๋ฆฌ๊ณ ์ค๋ ์ ๋ง ์ฒ์์ผ๋ก ๋ฝ์ ๋ํด์ ์ฌ์ฉํด๋ณด๋ฉฐ ๊ฒฝํํด๋ณด์๋๋ฐ, ์์ง ์กฐ๊ธ ์ด๋ ค์์(๋ฝ๋ฟ๋ง ์๋๋ผ ์ธ๋ฑ์ค์ ๋ํ ๊ฐ๋
์กฐ์ฐจ ์์ด์..) ๊พธ..
์ค๋ ๊ณต๋ถํ ๋ด์ฉ ์
๋ฝ์ ํ๋ก์ ํธ ํ์ & ๊ฐ๋ฐ Vestie ํ๋ก์ ํธ ๊ฐ๋ฐ ํผ์ ์ฝ๋ฉ ์ฐ์ต ๐ญ ๋๋ ์ & ๋ฐฐ์ด ์ ์ค๋์ ๋ญ๊ฐ ํ๋ฃจ์ข
์ผ ์ฝ๋๋ฅผ ์ข ๋ง์ด ์น ๊ฒ ๊ฐ๋ค. ๋ด์ผ์ ๋ค์ ์์นจ์ ์ด์์ฒด์ ํ๊ณ , ์ง ์์๋ DB ๊ณต๋ถ ํด์ผ์ง... ๐ฅ ๋ด์ผ ๊ณต๋ถํ ๋ด์ฉ ํ๋ก์ ํธ ๊ฐ๋ฐ ์ด์์ฒด์ ๊ณต๋ถ DB ๊ณต๋ถ ์ค๋ ๊ณต๋ถํ ๋ด์ฉ ํฌ์คํ
์ค๋ ๊ณต๋ถํ ๋ด์ฉ ์
๋ฝ์ ํ๋ก์ ํธ ํ์& ๊ฐ๋ฐ ๊ธฐ๋ฅ ์กฐ๊ธ ๊ฐ๋ฐ ๐ญ ๋๋ ์ & ๋ฐฐ์ด ์ ์๋๋ผ ๊ณต๋ถ ๋ชปํจ ใ
ใ
๐ฅ ๋ด์ผ ๊ณต๋ถํ ๋ด์ฉ ํ๋ก์ ํธ ํ์ & ๊ฐ๋ฅํ๋ฉด ๊ฐ๋ฐ DB ๊ณต๋ถ ์ด์์ฒด์ ๊ณต๋ถ ๋น๋ฐ๋ฒํธ ์ํธํ ๊ธฐ๋ฅ ์์ฑ ์ค๋ ๊ณต๋ถํ ๋ด์ฉ ํฌ์คํ
์ค๋ ๊ณต๋ถํ ๋ด์ฉ ์
๋ฝ์ ํ๋ก์ ํธ ํ์& ๊ฐ๋ฐ ๊ธฐ๋ฅ ์กฐ๊ธ ๊ฐ๋ฐ ์ด์์ฒด์ ๊ณต๋ถ ๐ญ ๋๋ ์ & ๋ฐฐ์ด ์ ์ ์ค๋ ์ ์ค์บ ํผ์ค์ ๋ฐฑ๊ธฐ์ ๋ ์ค์
จ๋๋ฐ,,, ์ ๋ ์ ๋ฆ.. ์ง์ง ์ค๋๋งํผ ์ฐ์ธํ ๋ ์ด ์์๋ค ์ฆ๋ง.. ์ผ์ผ์ผ์ผ์ผ์ผ์์์์ ์ ๊ทธ๋ฆฌ๊ณ ํ์๊ฐ์
๊ธฐ๋ฅ ๋ง๋๋ ์ค์ธ๋ฐ, ๋น๋ฐ๋ฒํธ ์ํธํ์ ๊ฐ์๊ธฐ ์ ๊ฒฝ์ด ์์ฒญ ์ฐ์ฌ์ ์ํธํ ์๊ณ ๋ฆฌ์ฆ ์ฐพ๊ณ ์ ์ฉํด๋ณด๋ ค๋ค ์๊ฐ์ด ๋๋ฌด ๋ง์ด ์ง๋์ ๋ด์ผ๋ก ๋ฏธ๋ฃจ๊ณ ์๋ ค ํ๋ค... ์๊ฐํด๋ณด๋ DB ๊ณต๋ถ ๋ชปํ๋น.. ๐ฅ ๋ด์ผ ๊ณต๋ถํ ๋ด์ฉ ํ๋ก์ ํธ ํ์ & ๊ฐ๋ฅํ๋ฉด ๊ฐ๋ฐ DB ๊ณต๋ถ ์ด์์ฒด์ ๊ณต๋ถ ๋น๋ฐ๋ฒํธ ์ํธํ ๊ธฐ๋ฅ ์์ฑ ์ค๋ ๊ณต๋ถํ ๋ด์ฉ ํฌ์คํ