μΌ | μ | ν | μ | λͺ© | κΈ | ν |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- λ°±μ€1874
- λ¬Έμμ΄
- λ
- λ°±μ€9093
- μ
- StringBuilder
- λ°°μ΄
- StringBuffer
- stream
- μ°
- λ°μ΄ν°νμ
- μΏ ν‘ERD
- μΏ ν‘DB
- μ°μ°μ
- λ°±μ€9012
- μλ°
- μ€νμμ΄
- μ€ν
- ν방쿼리
- λ°±μ€11053 #νμ΄μ¬ #python
- μ€νΈλ¦Ό
- java
- Today
- Total
Tech Log π οΈ
[jpa] OSIV μ±λ₯ μ΅μ ν λ³Έλ¬Έ
OSIVλ
OSIV(Open Session In View)λ₯Ό μ¬μ©νλ©΄ μ΅μ΄ λ°μ΄ν°λ² μ΄μ€ 컀λ₯μ μμ μμ λΆν° API μλ΅μ΄ λλ λκΉμ§ μμμ± μ»¨ν μ€νΈμDB 컀λ₯μ μ μ μ§νλ€. μ΄λ κ² ν¨μΌλ‘μ¨ λ·°μ 컨νΈλ‘€λ¬μμ μ§μ° λ‘λ©μ ν μ μλ€.
*νΈλμμ μ΄ μμν λ DB컀λ₯μ μ νλνλ€.
νμ§λ§ μ΄ μ λ΅μ ν° λ¨μ μ΄ μλλ°, λ무 μ€λ μκ° DB 컀λ₯μ μ μ μ§ν¨μΌλ‘ μΈν΄ 리μμ€ λΆμ‘± μ₯μ λ‘ μ΄μ΄μ§ μ μλ€λ κ²μ΄λ€.λ°λΌμ μν©μ λ§λ OSIV μ λ΅μ΄ νμνλ€.
OSIV λμ λ°©μ
jpaμμλ OSIVμ κΈ°λ³Έκ°μ true (μ¬μ©)μΌλ‘ μ 곡νκ³ μλ€.
1. ν΄λΌμ΄μΈνΈ μμ²μ΄ λ€μ΄μ€λ©΄ μλΈλ¦Ώ νν°λ μ€νλ§ μΈν°μ ν°μμ μμμ± μ»¨ν μ€νΈλ₯Ό μμ±νλ€.
2. μλΉμ€ κ³μΈ΅μμ 미리 λ§λ€μ΄λ μμμ± μ»¨ν μ€νΈλ‘ νΈλμμ μ μμνλ€.(@Transactional μ΄λ Έν μ΄μ μ΄ μλ κ³³)
3. νΈλμμ μ 컀λ°νλ©΄ μμμ± μ»¨ν μ€νΈλ₯Ό νλ¬μνμ§λ§ μμμ± μ»¨ν μ€νΈλ₯Ό μ’ λ£μν€μ§λ μλλ€, (λ·°, 컨νΈλ‘€λ¬κΉμ§ μ μ§)
4. μμ²μ΄ λμμ€λ©΄ νλ¬μλ₯Ό νμ§ μκ³ μμμ± μ»¨ν μ€νΈλ₯Ό λ°λ‘ μ’ λ£νλ€.
OSIV OFF
OSIVλ₯Ό λ μνμμ νΈλμμ μ΄ λλλ©΄ DB 컀λ₯μ μ λ°ννλ―λ‘ λ¦¬μμ€λ₯Ό λλΉνμ§ μλλ€.
νμ§λ§ μμμ± μ»¨ν μ€νΈλ μ’ λ£μμΌ λ²λ¦¬κΈ°λλ¬Έμ λ·°μ 컨νΈλ‘€λ¬μμ μ§μ°λ‘λ©μ ν μμλ€.λ°λΌμ νΈλμμ λ΄μμ λͺ¨λ μ§μ°λ‘λ©μ μ²λ¦¬ν΄μΌνλ€.
μ΄λ₯Ό ν΄κ²°νκΈ° μν΄μλ OSIV λ₯Ό λ€μ μΌ λ€κ±°λ , νμΉ μ‘°μΈμ μ¬μ©νλ λ± μ¬λ¬ λ°©λ²μ΄ μμ§λ§
κ°μ₯ λ¨μνκ² κ΄μ¬μ¬λ₯Ό λΆλ¦¬νλ κ²λ§μΌλ‘ λ¬Έμ λ₯Ό ν΄κ²°ν μ μλ€. (컀맨λμ 쿼리 λΆλ¦¬)
컀맨λμ 쿼리 λΆλ¦¬
λ³΄ν΅ ν΅μ¬ λΉμ¦λμ€λ‘μ§μ νλ² κ°λ°νλ©΄ μ½κ² λ°λμ§ μλλ€.
λ°λ©΄ νλ©΄μ ꡬμ±νλ λ·°λ‘μ§μ κ°λ°μ΄ μμλ λ€μλ μ¬λ¬ λ² λ°λλ―λ‘ λμ λΌμ΄ν μ¬μ΄ν΄μ΄ λ€λ₯΄λ€.
λ°λΌμ λμ κ΄μ¬μ¬λ₯Ό λͺ ννκ² λΆλ¦¬νλ κ²μ μ μ§λ³΄μ κ΄μ μμ μΆ©λΆν μλ―Έμλ€.
ex)
OrderService
OrderService: ν΅μ¬ λΉμ¦λμ€ λ‘μ§
OrderQueryService: νλ©΄μ΄λ APIμ λ§μΆ μλΉμ€ (μ£Όλ‘ μ½κΈ° μ μ© νΈλμμ
μ¬μ©)
λ μλΉμ€ λͺ¨λ νΈλμμ μ μ μ§νλ©΄μ μ§μ°λ‘λ©μ μ¬μ©ν μ μλ€.
'jpa' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[jpa] 컬λ μ μ‘°ν μ΅μ ν - 2 (0) | 2023.03.01 |
---|---|
[jpa] 컬λ μ μ‘°ν μ΅μ ν - 1 (0) | 2023.02.27 |
[jpa] μ§μ°λ‘λ©κ³Ό μ‘°ν μ±λ₯ μ΅μ ν (0) | 2023.02.25 |
[jpa] λ€μν μ°κ΄κ΄κ³ 맡ν μ 리 (0) | 2023.02.19 |
μμκ΄κ³ 맀ν μ λ΅ μ’ λ₯ λ° μ νκ°μ΄λ (0) | 2022.02.27 |