본문 바로가기 메뉴 바로가기

xor eax, eax

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

xor eax, eax

검색하기 폼
  • 분류 전체보기 (135)
    • OrangePi (2)
    • CodingTest (27)
    • Spring (24)
      • 테스트 (4)
      • JPA (1)
      • Webflux (0)
      • 타임리프 (2)
    • 트러블슈팅 (12)
    • CS (33)
      • Java (15)
      • 배포 (6)
    • etc (30)
      • Vim (5)
      • git (3)
      • 협업 (2)
      • Rust (0)
      • 프로젝트 (2)
      • wsl (2)
      • nodejs (0)
      • CHEAT SHEET (2)
      • TIL (12)
    • Linux (1)
  • 방명록

Spring/JPA (1)
여러건의 조회가 필요할 때는 IN clause를 사용하자!

코드를 리팩토링하면서 대부분이 코드 스멜을 스멀스멀 풍겼지만 그 중에 최악의 코드 스멜은 for loop를 돌며 findById를 매번 해오는 코드였다. 코드를 리팩토링해버려서 대충 다시 작성해보자면 다음과 같은 코드였다. for (Long myId : myIds) { myRepository.findByMyId(myId); } for문을 돌면서 값을 하나씩 받아 매번 DB I/O를 발생시키는 코드였다..😞 해당 코드는 여러 검색과 질문을 통해 다음과 같은 코드로 변경시킬 수 있었다. List findByForeignIdIn(List foreignIds); JPA의 IN clause를 사용하는 아주 간단한 해결 방법이다. IN은 범위 조건문으로 BETWEEN, LIKE처럼 사용되지만 모든 값을 일일히 입력..

Spring/JPA 2022. 6. 23. 14:50
이전 1 다음
이전 다음
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
  • 도커
  • 배포
  • JavaScript
  • 레디스
  • ModelAttribute
  • neovim
  • vim
  • RequestParam
  • RequestPart
  • RequestBody
  • lunarvim
  • Dap
  • IDE
  • 아키텍처
  • 루나빔
more
«   2025/06   »
일 월 화 수 목 금 토
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
글 보관함

Blog is powered by Tistory / Designed by Tistory

티스토리툴바