본문 바로가기

학습/JPA2

[JPA] Open Session In View (OSIV) 사전 개념1 - Persistence Context & Transaction - 스프링에서 엔티티 객체를 관리하는 영속성 컨텍스트는 트랜잭션과 1:1로 연결됩니다. - 즉, 트랜잭션의 범위와 영속성 컨텍스트의 생존 범위가 동일합니다. - 그래서 트랜잭션이 종료될 때 엔티티 매니저가 컨텍스트를 flush하고, 변경사항을 commit 합니다. 사전 개념2 - Lazy Loading & Proxy Intiailization - Lazy loading으로 연관 관계를 맺고 있는 객체에는, 초기화 전까지 프록시 객체가 할당되어 있습니다. - 연관 엔티티의 데이터에 접근할 때 영속성 컨텍스트에 실제 엔티티가 없다면 객체를 생성합니다 (프록시 초기화) - member.getTeam()처럼 연관 객체 자체에 접근할 때.. 2021. 5. 23.
[Querydsl] 우아한테크콘서트 2020 Querydsl 강의 정리 영상 링크 이 포스트는 우아한형제들에서 2020년 우아한테크콘서트를 진행하며 이동욱님께서 발표해주신 수십억건에서 Querydsl 사용하기를 시청하며 학습하고 정리한 글입니다. 테스트 환경 Java : OpenJDK 1.8.0_252 Querydsl : Querydsl-JPA 4.2.1 Database : AWS Aurora MySQL 5.6 1.19.6 Querydsl의 Custom Repository를 사용하지 않는 방법 보통 Querydsl을 사용할 때 1. JpaRepository와 CustomRepository를 확장(extends)한 Repository Interface 2. Querydsl을 사용하는 메소드 시그니처를 정의하는 RepositoryCustom Inteface 3. 실제로 Quer.. 2021. 1. 10.