Lazy Loading
Lazy Loadingμ κ°μ²΄ μ§ν₯ νλ‘κ·Έλλ°μμ μμ£Ό μ¬μ©λλ ν¨ν΄μΌλ‘, κ°μ²΄μ νμνμ§ μμ λ°μ΄ν°λ₯Ό 미리 λ‘λνμ§ μκ³ , μ€μ λ‘ νμν λ λ‘λνλ λ°©μμ΄λ€. μ΄λ₯Ό ν΅ν΄ μ΄κΈ° λ‘λ© μκ°μ μ€μ΄κ³ λ©λͺ¨λ¦¬ μ¬μ©μ μ΅μ νν μ μλ€.
μ₯μ
β’
λ©λͺ¨λ¦¬ ν¨μ¨μ±: νμνμ§ μμ λ°μ΄ν°λ₯Ό λ‘λνμ§ μμΌλ―λ‘ λ©λͺ¨λ¦¬ μ¬μ©μ μ€μΌ μ μλ€.
β’
μ±λ₯ ν₯μ: μ²μμ νμν λ°μ΄ν°λ§ λ‘λνλ―λ‘ μ ν리μΌμ΄μ
μ μ΄κΈ° μλ΅ μκ°μ΄ λ¨μΆλλ€.
β’
λ€νΈμν¬ μ€λ²ν€λ κ°μ: ν΄λΌμ΄μΈνΈμ μλ² κ°μ λ°μ΄ν° μ μ‘λμ μ€μ¬ λ€νΈμν¬ μ±λ₯μ ν₯μμν¨λ€.
λ¨μ
β’
μ§μ°λ μ±λ₯ μ ν: λ°μ΄ν°μ μ κ·Όν λλ§λ€ μΏΌλ¦¬κ° μ€νλλ―λ‘, λ°λ³΅μ μΈ μ κ·Όμ΄ μμ κ²½μ° μ±λ₯μ΄ μ νλ μ μλ€.
β’
N+1 λ¬Έμ : μ°κ΄λ λ°μ΄ν°λ₯Ό λ°λ³΅μ μΌλ‘ μ‘°νν λ μΏΌλ¦¬κ° N+1λ² μ€νλλ λ¬Έμ κ° λ°μν μ μλ€.
JPAμμμ νμ©
JPAμμλ μν°ν° κ°μ κ΄κ³λ₯Ό μ€μ ν λ Lazy Loadingμ μ½κ² ꡬνν μ μλ€. μλ₯Ό λ€μ΄, @OneToMany λλ @ManyToMany κ΄κ³μμ fetch = FetchType.LAZYλ₯Ό μ§μ νλ©΄ ν΄λΉ κ΄κ³μ λ°μ΄ν°λ₯Ό νμν λλ§ λ‘λνκ² λλ€.