일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- Proxy
- jpa
- 인프런
- JPQL
- 스프링 핵심 원리
- kotlin
- AOP
- Exception
- SpringBoot
- java
- spring
- Spring Boot
- transaction
- Greedy
- db
- 그리디
- 백준
- 자바
- pointcut
- springdatajpa
- JDBC
- 알고리즘
- http
- 스프링 핵심 기능
- 김영한
- Android
- QueryDSL
- Servlet
- Thymeleaf
- 스프링
- Today
- Total
목록@EntityGraph (2)
개발자되기 프로젝트
1. @EntityGraph? 연관된 엔티티들을 SQL 한번에 조회하는방법 2. 사례 member -> team은 다대일 지연로딩 관계. 따라서 team에 대한 데이터 접근(team.get~) 시 쿼리가 날라감. 따라서 member에 대한 쿼리 외에 team의 데이터 조회하는 쿼리 나감. 즉 N+1 이슈 발생함. 3. member만 조회 @Test public void findMemberLazy(){ //given //member1 -> TeamA //member2 -> TeamB Team teamA = new Team("teamA"); Team teamB = new Team("teamB"); teamRepository.save(teamA); teamRepository.save(teamB); Member..
1. Fetch Type이란? Entity 를 조회할 경우 해당 Entity와 연관관계에 있는 Entity를 어떻게 가져올 것인지 설정하는 값이다. - 연관 관계에 있는 Entity 를 모두 가져온다 → Eager - 연관 관계에 있는 Entity 를 getter 로 접근할 때 가져온다 → Lazy 2. Lazy fetch Lazy Fetch는 연관관계에 있는 Entity를 바로 가져오는 것이 아니라 연관관계의 entity를 getter로 호출할 때만 가져온다. User class를 보자. user와 userHIstory는 1:N관계이다. User를 호출할 때 마다 UserHistory도 항상 불러와야 할까?? 항상 필요하지도 않은데..? UserHistory가 필요한 시점에만 쿼리를 실행하면 되지 않을..