[TIL] JPA ์—”ํ‹ฐํ‹ฐ update ๋ฌธ์ œ ํ•ด๊ฒฐ (JPA ๋”ํ‹ฐ์ฒดํ‚น๊ณผ @Transactional)

2026. 1. 18. 15:32ยทToday I Learned ๐Ÿง/Project

 

๋”ํ‹ฐ ์ฒดํ‚น์„ ์ด์šฉํ•œ ์—”ํ‹ฐํ‹ฐ Update

 

JPA์˜ ์˜์†์„ฑ ์ปจํ…์ŠคํŠธ๋Š” DB ์กฐํšŒ ๊ฒฐ๊ณผ๋ฅผ ์บ์‹ฑ(1์ฐจ ์บ์‹œ)ํ•˜์—ฌ ๋™์ผํ•œ ์—”ํ‹ฐํ‹ฐ์— ๋Œ€ํ•œ ๋ถˆํ•„์š”ํ•œ ์ฟผ๋ฆฌ ์‹คํ–‰์„ ๋ฐฉ์ง€ํ•ด์ค€๋‹ค.

ํŠธ๋ž™์žญ์…˜์ด ์ปค๋ฐ‹๋  ๋•Œ ๋ณ€๊ฒฝ๋œ ์—”ํ‹ฐํ‹ฐ๋ฅผ ์ž๋™ ๊ฐ์ง€ํ•˜๊ณ  DB์— ๋ฐ˜์˜๋˜๊ธฐ ๋•Œ๋ฌธ์—, ( โžก๏ธ ์ด๊ฒƒ์ด ๋”ํ‹ฐ์ฒดํ‚น!) ๋ ˆํผ์ง€ํ„ฐ๋ฆฌ์—  update ๋ฉ”์„œ๋“œ๋ฅผ ๋”ฐ๋กœ ์ถ”๊ฐ€ํ•˜์ง€ ์•Š์•„๋„ ๋œ๋‹ค !

์ด๋ฅผ ํ™œ์šฉํ•ด์„œ ์‚ฌ์šฉ์ž ์—”ํ‹ฐํ‹ฐ ์•ˆ์— couple_id ๊ฐ’์„ ๋ฐ”๊พธ๋Š” ๋ฉ”์„œ๋“œ๋ฅผ ์ถ”๊ฐ€ํ•ด๋†จ์—ˆ๋‹ค.

 

(์ถœ์ฒ˜: https://orange-makiyato.tistory.com/136 )

 

 

 

์ปคํ”Œ ์—ฐ๋™์ด ์™„๋ฃŒ๋˜๋ฉด couple_id๊ฐ’์ด update ๋˜์–ด์•ผ ํ•˜๋Š”๋ฐ,

ํ•ด๋‹น ํ…Œ์ŠคํŠธ ์‹คํŒจํ•˜๊ณ , ์ฝ˜์†”์ฐฝ์„ ์‚ดํŽด๋ณด๋‹ˆ update ๋ฌธ์ œ ์ „ํ˜€ ๋ณด์ด์งˆ ์•Š์•˜๋‹ค.

 

๋ถ„๋ช… ๋‹ค๋ฅธ ๋„๋ฉ”์ธ ๋ฉ”์„œ๋“œ๋“ค์€ update ์ฟผ๋ฆฌ๋„ ์‹คํ–‰๋˜๊ณ  ํ…Œ์ŠคํŠธ๋„ ํ†ต๊ณผํ•˜๋Š” ๋ฐ ๋ญ๊ฐ€ ๋ฌธ์ œ์ธ์ง€ ..

ํด๋กœ๋“œ์—๊ฒŒ ๋„์›€์„ ์š”์ฒญํ–ˆ๋Š”๋ฐ @Transactional ์–ด๋…ธํ…Œ์ด์…˜ ๋ˆ„๋ฝ๋œ ๊ฒŒ ๋ฌธ์ œ๋ผ๊ณ  ํ•œ๋‹ค.

์œ„์— ์–ธ๊ธ‰ํ•œ ๋ธ”๋กœ๊ทธ์—์„œ๋„ @Transactional(readOnly = false)์ผ ๋•Œ๋งŒ ๋™์ž‘ํ•œ๋‹ค๊ณ  ํ•œ๋‹ค.

 

๋‹ค์‹œ ์ž‘์„ฑํ•œ ์ฝ”๋“œ๋“ค์„ ์‚ดํŽด๋ณด๋‹ˆ,

๋”ํ‹ฐ์ฒดํ‚น์ด ์ •์ƒ์ ์œผ๋กœ ์ด๋ฃจ์–ด์ง„ ๋„๋ฉ”์ธ ๋ฉ”์„œ๋“œ๋Š” @Transactional ์ด ๋ถ™์€ ์„œ๋น„์Šค ๋‚ด ๋ฉ”์„œ๋“œ์—์„œ ํ˜ธ์ถœ์ด ๋˜์—ˆ๊ณ ,

๋ฐํ‹ฐ์ฒดํ‚น์ด ๋˜์ง€ ์•Š์•˜๋˜ ๋„๋ฉ”์ธ ๋ฉ”์„œ๋“œ๋Š” @Transactional์ด ๋ถ™์ง€ ์•Š์€ ๋งค๋‹ˆ์ € ๋‚ด ๋ฉ”์„œ๋“œ์—์„œ ํ˜ธ์ถœ๋˜๊ณ  ์žˆ์—ˆ๋‹ค.

 

 

๋งค๋‹ˆ์ € ๋ฉ”์„œ๋“œ์— @Transactional ์„ ๋ถ™์—ฌ์ฃผ๋‹ˆ,  ํ…Œ์ŠคํŠธ๋„ ํ†ต๊ณผ๋˜๊ณ  update ์ฟผ๋ฆฌ๋ฌธ์ด ์‹คํ–‰๋˜๋Š” ๊ฑธ ํ™•์ธํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค. โœŒ๐Ÿป

 

 

์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋ณ€๊ฒฝ๊ธˆ์ง€ (์ƒˆ์ฐฝ์—ด๋ฆผ)

'Today I Learned ๐Ÿง > Project' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[TIL] JPA @OneToMany ์ปฌ๋ ‰์…˜ ์ˆ˜์ • ์‹œ ์ฃผ์˜์  (์ปฌ๋ ‰์…˜ ์ถ”์ )  (0) 2026.03.09
[TIL] Kotlin ํ‘œํ˜„์‹ ํ™œ์šฉํ•˜์—ฌ ๋ฆฌํŒฉํ† ๋ง ํ•˜๊ธฐ  (0) 2026.03.08
'Today I Learned ๐Ÿง/Project' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [TIL] JPA @OneToMany ์ปฌ๋ ‰์…˜ ์ˆ˜์ • ์‹œ ์ฃผ์˜์  (์ปฌ๋ ‰์…˜ ์ถ”์ )
  • [TIL] Kotlin ํ‘œํ˜„์‹ ํ™œ์šฉํ•˜์—ฌ ๋ฆฌํŒฉํ† ๋ง ํ•˜๊ธฐ
ํ•ด๋‹ˆ ๐ŸŒณ
ํ•ด๋‹ˆ ๐ŸŒณ
๐ŸŒฑ + โ˜€๏ธ = ๐ŸŒณ
  • ํ•ด๋‹ˆ ๐ŸŒณ
    haeni.dev
    ํ•ด๋‹ˆ ๐ŸŒณ
  • ๋งํฌ

    • github
    • velog
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (15)
      • Dev Log โœ๏ธ (6)
        • Tech (2)
        • ์šฐ์‚ฌ๊ธฐ ๊ฐœ๋ฐœ์ผ์ง€ ๐Ÿฐ (4)
      • Today I Learned ๐Ÿง (9)
        • Project (3)
        • Algorithm (0)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ํ™ˆ
    • ํƒœ๊ทธ
    • ๋ฐฉ๋ช…๋ก
  • ๊ณต์ง€์‚ฌํ•ญ

  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

    ๊ฐœ๋ฐœ์ผ์ง€
    Java
    kotlin
    ์ฝ”ํ…Œ
    ์•Œ๊ณ ๋ฆฌ์ฆ˜
    til
    backend
    springboot
    JPA
    IT
    ์ฝ”๋”ฉํ…Œ์ŠคํŠธ
    ci/cd
    test
    postgresql
    AWS
  • ์ตœ๊ทผ ๋Œ“๊ธ€

  • ์ตœ๊ทผ ๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.5
ํ•ด๋‹ˆ ๐ŸŒณ
[TIL] JPA ์—”ํ‹ฐํ‹ฐ update ๋ฌธ์ œ ํ•ด๊ฒฐ (JPA ๋”ํ‹ฐ์ฒดํ‚น๊ณผ @Transactional)
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”