-
-
Spring์์๋ ์ฃผ๋ก ์ ์ธ์ ํธ๋์ญ์ ์ ์ด์ฉํ๋๋ฐ, tx:adviceํ๊ทธ ๋๋ @Transactional ์ด๋ ธํ ์ด์ ์ ์ด์ฉํ๋๋ฐ, ํด๋ฆฌ๋ฌธ์ ์ฒ๋ฆฌํ๋ ๊ณผ์ ์์ ์๋ฌ๊ฐ ๋ฌ์ ๊ฒฝ์ฐ ์๋์ผ๋ก Rollback ์ฒ๋ฆฌ๋ฅผ ํด์ค๋ค.
-
-
์๋ฅผ๋ค์ด ์น๊ตฌ์๊ฒ ์ธํฐ๋ท ๋ฑ ํน์ผ๋ก 10,000์์ ์ก๊ธํ ๊ฒฝ์ฐ ๋์ ๊ณ์ข์์ 10,000์์ ์ค์ด๊ณ ์น๊ตฌ์ ๊ณ์ข์ 10,000์์ ์ฆ๊ฐ์์ผ์ผ ํ๋ค. ํ์ง๋ง ์ ์ ์๋ ์ค๋ฅ๋ก ์ธํด ๋์ ๊ณ์ข์์๋ 10,000์์ด ์ค์์ง๋ง ์น๊ตฌ ๊ณ์ข์๋ 10,000์์ด ์ฆ๊ฐ๋์ง ์๋๋ค๋ฉด? ๋์ 10,000์์ ๊ทธ๋ฅ ๊ณต์ค์ผ๋ก ์ฆ๋ฐํด๋ฒ๋ฆฌ๋ ์ฌ๊ณ ๊ฐ ๋ฐ์ํ๋ค.
-
-
-
- caller๊ฐ target method๋ฅผ ํธ์ถํ๋ฉด ๋จผ์ AOP proxy๊ฐ ํธ์ถ๋จ
- Transaction Advisor๋ ์๋ก์ด ํธ๋์ญ์ ์ ์์ฑํจ
- Custom interceptor๋ค์ด transaction advisor ์ ํ๋ก ํธ์ถ๋จ
- Target ๋น์ฆ๋์ค ๋ฉ์๋๊ฐ ํธ์ถ๋จ
- Transaction Advisor๋ ์ปค๋ฐ ๋๋ ๋กค๋ฐฑ์ ๊ฒฐ์ ํ๊ณ ํธ์ถ์์๊ฒ ๋๊น
- AOP Proxy๋ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ์ Caller์๊ฒ ๋๊น