@Transaction์ ๋ํด ๊ณต๋ถํ๋ค๊ฐ, propagation ์ ํ ๋ฐฉ์, ๊ณ ๋ฆฝ ๋ฐฉ์์ ๋ํด ๋ ์์ธํ ์๊ธฐ ์ํด ๊ธฐ๋ก
Transaction์ด๋?
๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ํ๋ฅผ ๋ณ๊ฒฝํ๋ ์์ ๋๋ ํ๋ฒ์ ์ํ๋์ด์ผํ๋ ์ฐ์ฐ๋ค
๋ณํ ์ ์ด ์ ์ฒ๋ฆฌ๋๋ ์์ ์ ๋ ผ๋ฆฌ์ ๋จ์
Transaction์ ํ๋์ ํ๋ฆ์ผ๋ก ํ๋์ ์คํ์ด ์ฑ๊ณตํ๊ฑฐ๋ ์คํจํ๋ฉด ๋ชจ๋ ์ฐ์ฐ๋ค์ ๋์ผํ๊ฒ ์ฒ๋ฆฌํ๋ค.
๋ชจ๋ ์์ ์ด ์ฑ๊ณตํ๋ค๋ฉด ์๋ฃ ์์ ์ํ๋ฅผ ๋ชจ๋ ๋ฐ์ํ๊ณ , ์ด๊ฒ์ Commit์ด๋ผ๊ณ ํ๋ค.
๋ฐ๋ฉด, ํ๋๋ผ๋ ์คํจํ๊ฒ ๋๋ฉด ๋ชจ๋ ์ฌํญ์ ํ๊ธฐํ๊ณ , ์ด๊ฒ์ Rollback์ด๋ผ๊ณ ํ๋ค.
Spring์์๋ Data Access ๊ณ์ธต์์๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ๊ทผํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์กฐ์ํ๋ค.
์คํ๋ง์ ํธ๋์ญ์ ์ถ์ํ๋ฅผ ๋ฐ์ํ๋๋ฐ, ์ด ๋๋ถ์ ํน์ ๊ธฐ์ ์ ์ข ์๋์ง ์๋ ์ผ๊ด์ ๋ฐฉ์์ผ๋ก ํธ๋์ญ์ ์ ์ ์ฉํ ์ ์๋ค.
'Server๐งค > Spring' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Servlet Filter, Spring Interceptor (0) | 2023.04.22 |
---|