일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- jpa
- Thymeleaf
- spring
- 스프링 핵심 기능
- 스프링
- Proxy
- springdatajpa
- 백준
- http
- Exception
- AOP
- 알고리즘
- kotlin
- 그리디
- 자바
- Spring Boot
- JDBC
- transaction
- 인프런
- 김영한
- JPQL
- java
- pointcut
- Greedy
- QueryDSL
- SpringBoot
- db
- 스프링 핵심 원리
- Android
- Servlet
- Today
- Total
목록lazy fetch (2)
개발자되기 프로젝트
1. 지연로딩 LAZY FETCH를 사용해서 프록시로 조회. @Entity public class Member extends BaseEntity{ @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "TEAM_ID") private Team team; Member member = new Member(); member.setUserName("hello"); em.persist(member); em.flush(); em.clear(); Member m = em.find(Member.class, member.getId()); tx.commit(); 로그를 보면 SELECT 쿼리를 통해 member만 읽어온다. Hibernate: select member0_.MEMB..
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가 필요한 시점에만 쿼리를 실행하면 되지 않을..