๋ฐ์ํ
1. Transction ์ด๋?
- ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ํ๋ฅผ ๋ณ๊ฒฝ ์ํค๋ ์์ ๋๋ ํ๋ฒ์ ์ํ๋์ด์ผํ๋ ์ฐ์ฐ๋ค์ ์๋ฏธ
- ํธ๋์ญ์ ์์ ์ด ๋๋๋ฉด Commit ๋๋ Rollback ์ด ๋์ด์ผ ํ๋ค.
2. Transction์ ๋์ ์๋ฆฌ
1) ์ฐ์ ์์
- ํด๋์ค ๋ฉ์๋ > ํด๋์ค > ์ธํฐํ์ด์ค ๋ฉ์๋ > ์ธํฐํ์ด์ค ์์ผ๋ก ์ฐ์ ์์๋ฅผ ๊ฐ์ง๊ณ ์๋ค.
๊ณตํต์ ์ธ ํธ๋์ค ๊ท์น > ํด๋์ค (Class)
ํน๋ณํ ํธ๋์ค ๊ท์น > ์ธํฐํ์ด์ค(Interface)
2) ํธ๋์ญ์
(Transction) ๋ชจ๋
- ๋ฐ๋์ publice ๋ฉ์๋์ ์ ์ฉ
- protected, private ๋ฉ์๋์์๋ ์ ์ธ๋์ด๋ ์๋ฌ๊ฐ ๋ฐ์ํ์ง๋ ๋์๋ ํ์ง ์๋๋ค.
- @Transaction์ด ์ ์ฉ๋์ง ์์ public์์ @Transaction์ด ์ ์ฉ๋ public์ ํธ์ถํ๋ ๊ฒฝ์ฐ, ํธ๋์ญ์ ์ด ๋ฏธ์๋
3. Transction ์ฌ์ฉ ์์
- ํ๋์ ์์ ํน์ ์ฌ๋ฌ ์์ ์ ํ๋์ ์์ ๋จ์๋ก ๋ฌถ์ด Commit ๋๋ Rollback ์ฒ๋ฆฌ๊ฐ ํ์ ํ ๋
Jpa๋ฅผ ์ฌ์ฉํ๋ค๋ฉด ๋จ์ผ ์์ ์ ๋ํด์๋ @Transactional์ ์ง์ ์ ์ธํ ํ์๊ฐ ์๋ค.
> Jpa์ ๊ตฌํ์ฒด์ ์ด๋ฏธ @Transactional์ด ์ ์ธ๋์ด ์๊ธฐ ๋๋ฌธ์ ๋ฌธ์ ๊ฐ ๋ฐ์ ํ ๊ฒฝ์ฐ rollback ์ฒ๋ฆฌ
1) ์ ์์ ์ผ๋ก Transaction์ด ๋ ๊ฒฝ์ฐ
๋ฐ์ํ
'๐ฟSpring > Spring Framework' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Spring Framework] Spring Boot 2.* vs 3.* (0) | 2024.06.11 |
---|---|
[Spring Framework] Spring Boot์ ์์ ํ๋ก์ธ์ค (0) | 2024.05.13 |
[Spring Framework - Thymeleaf] Decoupled Logic (0) | 2024.01.21 |
[Spring Framework - Thymeleaf] Thymeleaf ๋? (0) | 2024.01.18 |
[Spring Framework] Filter ์ Interceptor (1) | 2024.01.11 |