λ°μν JPA6 μ’μμ κΈ°λ₯μ ν΅ν΄ μ΄ν΄λ³΄λ λμμ± μ΄μ (synchronized) μλ νμΈμ, μ΄λ² ν¬μ€ν μμλ λμμ±(Concurrency)μ λν΄ μ΄ν΄λ³΄κ² μ΅λλ€. (μμ μ½λλ κΉνλΈμμ νμΈνμ€ μ μμ΅λλ€.) λμμ±(Concurrency) κ°λ λ€μ΄λ² μ¬μ μ κ²μν΄λ³Έ λμμ±μ λ€μκ³Ό κ°μ΅λλ€. μ΄λ€ λ μ¬κ±΄μ΄ κ°μ μκ°μ μΌμ΄λλ κ²μ μ΄λ₯΄λ λ§ λλΆλΆμ μΉ μλ²λ μ¬λ¬ κ°μ μμ²(ν΄λΌμ΄μΈνΈ)μ λμμ μνν μ μκ³ , μ΄λ μμ±ν μ½λκ° λμμ μνλ μ μλ€λ μλ―Έμ λμΌν λ§₯λ½μ λλ€. μ΄λ¬ν λμμ± λ¬Έμ λ₯Ό μ΄ν΄λ³΄κΈ° μν΄ κ²μκΈμμ ν΄λΌμ΄μΈνΈκ° λμμ μ’μμλ₯Ό νμ λ λ°μν μ μλ λ¬Έμ μ λν΄ μ΄ν΄λ³΄κ² μ΅λλ€. μ κ·Έλ¦Όμ λν μ€λͺ μ λ€μκ³Ό κ°μ΅λλ€. User Aκ° κ²μκΈ 1μ μ’μμλ₯Ό ν΄λ¦νμ λ likeCount μ‘°ν (likeCount = 0) User Bλ κ²μκΈ .. 2023. 2. 26. LazyInitializationException: could not initialize proxy - no Session Error π org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: ... entity.Folder.children could not initialize proxy - no Session κ°μΈμ μΌλ‘ μ§νμ€μΈ νλ‘μ νΈμμ JPA μ°κ΄κ΄κ³ ν μ΄λΈμ μ‘°ν & μμ νλ κ³Όμ μμ μμ κ°μ μλ¬κ° λ°μνμ΅λλ€. κ΄λ ¨λ μ½λλ₯Ό κ°λ¨ν λνλ΄λ©΄ λ€μκ³Ό κ°μ΅λλ€. (ν¬μ€ν μμ νλ¦° λ΄μ©μ΄ μλ€λ©΄ νΌλλ°± μ£Όμλ©΄ κ°μ¬νκ² μ΅λλ€. π) Folder μν°ν° @Entity class Folder( ... @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "parent_id") @.. 2022. 6. 1. JPQL @Query μλ¬: For queries with named parameters you need to use provide names for method parameters π For queries with named parameters you need to use provide names for method parameters Spring Data JPAμμ μλ Entityλ₯Ό ν΅ν΄ μ‘°νλ₯Ό νλ €λλ° μ€λ₯κ° λ°μνμ΅λλ€. (emailμ λν λ°μ΄ν°λ DBμ μ‘΄μ¬ν©λλ€.) import ... @Entity @Builder @NoArgsConstructor @AllArgsConstructor @Getter @ToString public class ClubMember extends BaseEntity { @Id private String email; @Column private String password; @Column private String name; @Column pri.. 2021. 7. 6. JPA μ°κ΄κ΄κ³ μμμ± μ μ΄(CASCADE) - CascadeType π JPA μμμ± μ μ΄(CASCADE) μλ νμΈμ! μ΄λ²μ μ 리ν λ΄μ©μ JPAμμ μμμ± μ μ΄(CASCADE)μ κ΄λ ¨λ λ΄μ©μ λλ€. μ΅κ·Ό κ°λ°μ μ§ννλ©° λ μ°κ΄λ μν°ν°μμ save()λ₯Ό νλ κ³Όμ μμ μ€λ₯κ° λ°μνκ³ , μ΄λ₯Ό ν΄κ²°νλ κ³Όμ μμ μμμ± μ μ΄(CASCADE)λΌλ κ°λ μ λν΄ μκ² λμκ³ , μ΄λ₯Ό μ 리νκ³ μ ν©λλ€. π (β» μλͺ»λ λ΄μ©μ΄ ν¬ν¨λμ΄ μμμλ μμ΅λλ€. μλͺ»λ λΆλΆμ λν΄ μ§μ ν΄μ£Όμλ©΄ κ°μ¬νκ² μ΅λλ€ π) π― μμμ±μ μ΄(CASCADE)λ ? λΆλͺ¨ μν°ν°κ° μμνλ λ μμ μν°ν°λ κ°μ΄ μμνλκ³ , λΆλͺ¨ μν°ν°κ° μμ λ λ μμ μν°ν°λ μμ λλ λ± νΉμ μν°ν°λ₯Ό μμ μνλ‘ λ§λ€ λ μ°κ΄λ μν°ν°λ ν¨κ» μμ μνλ‘ μ μ΄λλ κ²μ μλ―Έν©λλ€. μ¦, νΉμ μν°ν°μ λν΄ νΉμ ν μ.. 2021. 6. 21. Spring Data JPA μ¦μ λ‘λ©(Eager Loading) & μ§μ° λ‘λ©(Lazy Loading) π JPA - @ManyToOne μ¦μ λ‘λ©κ³Ό μ§μ° λ‘λ©(Eager Loading / Lazy Loading) Spring Data JPAμμ @ManyToOne(N:1)μΌλ‘ μ°κ΄κ΄κ³κ° μ€μ λμ΄ μλ 2κ°μ Entityκ° μ‘΄μ¬ν λ, λ°μ΄ν°λ² μ΄μ€μ μ μ₯μμ 보면 joinμ΄ νμν©λλ€. μ€μ @ManyToOneμ κ²½μ° FKμͺ½μ μν°ν°λ₯Ό κ°μ Έμ¬ λ PKμͺ½μ μν°ν°λ κ°μ΄ κ°μ Έμ€κ² λλλ°μ, μ΄λ¬ν κ³Όμ μ΄ κΌ νμν건μ§, νμνμ§ μλ€λ©΄ μ΄λ»κ² ν΄κ²°ν μ μλμ§ μ¦μ λ‘λ©κ³Ό μ§μ° λ‘λ©μ λν΄ μμ λ₯Ό ν΅ν΄ μ΄ν΄λ³΄κ² μ΅λλ€. β¨οΈ Board, Member μν°ν° import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Getter; import .. 2021. 6. 17. [Spring Boot] - Error creating bean with name 'org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaConfiguration' • μλ νμΈμ~ μ΄μ μ μ΄μνλ λΈλ‘κ·Έ λ° GitHub, κ³΅λΆ λ΄μ©μ μ 리νλ Study-GitHub κ° μμ΅λλ€! • λ€μ΄λ² λΈλ‘κ·Έ • GitHub • Study-GitHub • π Spring Bootμμ μ΄κΈ° νλ‘μ νΈλ₯Ό μμ±ν λ, Spring Data JPAλ₯Ό 체ν¬νκ³ νλ‘μ νΈλ₯Ό μμ±νλλ°, μ²μ μ ν리μΌμ΄μ μ μ€ννλ € νλ μλμ κ°μ μ€λ₯κ° λ°μνμ΅λλ€. Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name org.springfram.. 2021. 3. 7. μ΄μ 1 λ€μ λ°μν