@Transactional ์ด๋
ธํ
์ด์
์ง๋ฌธ๋๋ฆฝ๋๋ค
๊ฐ์ฌํฉ๋๋ค ์ํ๋ Spring Data Jpa ๋ก๋ ํ
์คํธํด๋ณด๊ณ ์ง์ EntityManager ์ด์ฉํด์๋ ํ
์คํธํด๋ณด์์ต๋๋ค. ์ ๊ฐ ์ง์ํ๊ธฐ๋ก๋ @Transactional ์ด๋
ธํ
์ด์
๊ณผ ๋ณ๊ฐ๋ก findBy ๋ฅผ ์ฌ์ฉํ๋ , EntityManager ๋ฅผ ์ด์ฉํด createQuery ๋ฅผ ์ด์ฉํด ๋ฐ์ดํฐ๋ฅผ ์กฐํํ๋ ๊ฒฐ๊ตญ ์์์ฑ์ปจํ
์คํธ๋ฅผ ์ด์ฉํด DB ์ ๊ทผ์ ํ๊ธฐ๋๋ฌธ์ @Transactional (readOnly=true) ์ @Transactional ์ ๋ถ์ด์ง ์์ ๊ฒฝ์ฐ ๋์ ์์์ฑ์ปจํ
์คํธ๋ ๊ฐ์ ๋ผ์ดํ์ฌ์ดํด์ ํ๋ค๊ณ ๋ด๋ ๋ง์๊น์? ๋ค๋ง ์ฐจ์ด๊ฐ ์๋ค๋ฉด readOnly ๋ ๋ณ๊ฒฝ๊ฐ์ง , flush ๋ฑ์ ์ฌ์ฉํ์ง ์์ ์๋์น์์ ๋ฐ์ดํฐ๋ณ๊ฒฝ์๋ง์์ฃผ๋๊ฑฐ๋ก ์๊ณ ์์ต๋๋ค. @Transactional ์ ๋ถ์ด์ง ์์ ๊ฒฝ์ฐ ๋ํ ์์ ๊ฐ์ด ๋์ํ๋๊ฑธ ํ์ธํ์ต๋๋ค. ์ด ๋์ ์ฐจ์ด๋ ๊ฑฐ์ ์๋ค๊ณ ๋ด๋ ๋ฌด๋ฐฉํ๊ฑธ๊น์ ใ