개발블로그

  • 홈
  • 태그
  • 방명록

지연로딩 2

[JAVA] 지연로딩과 조회 성능 최적화

주문 + 배송정보 + 회원을 조회하는 API를 만들자 지연 로딩때문에 발생하는 성능 문제를 단계적으로 해결해보자. 1. 엔티티를 직접 노출 (실무에서는 엔티티를 노출하는 일은 없으니 가볍게 보고 넘기기로 하자.) @GetMapping("/api/v1/simple-orders") public List ordersV1(){ List all = orderRepository.findAll(); return all; } 위에 코드는 엔티티를 직접 노출하는 개발 방식 양방향 연관관계일때 문제가 생김 → 무한루프에 빠져버림 (잘못된 코드) 이러한 경우 양방향이 걸리는데를 다 @JsonIgnore 를 걸어줘야함 → 그렇다면 무한 루프가 생기는 일은 피할 수 있지만 지연로딩 관련한 문제는 해결되지 않는다. 지연로딩으로 ..

JAVA 2022.05.19

[JAVA] 즉시로딩과 지연로딩

지연로딩 Member만 조회하고 싶은데 굳이 Team까지 가져와야하나?? 지연로딩 사용! 지연로딩 : Member만 조회해옴! LAZY를 사용해서 프록시로 조회 /* Member.java */ @ManyToOne(fetch = FetchType.LAZY) // Member 클래스만 DB에서 조회한다. @JoinColumn private Team team; /* Main.java */ Team team = new Team(); team.setName("teamA"); em.persist(team); Member member1 = new Member(); member1.setUsername("member1"); member1.setTeam(team); em.persist(member1); em.flush()..

JAVA 2022.01.05
이전
1
다음
프로필사진

개발블로그

개발자 박응디 cjdrud123@naver.com

  • 분류 전체보기 (126)
    • JAVA (81)
    • Python & Django (6)
    • Server(설정 등) (5)
    • DB (2)
    • Git (4)
    • Swift (7)
    • React (6)
    • AWS (2)
    • CT (5)
    • 참고사항 (8)

Tag

Spring, python, JPA, React, TDD, query, java, IP, code, DB, test, entity, testcode, 개발자, APP, mapping, swift, 설정, IOS, 개발,

Calendar

  2025. 05  
일 월 화 수 목 금 토
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

Copyright © Kakao Corp. All rights reserved.

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.