Project/Team Project(딱좋은여행)

문제 분석1. N+1 문제 (주요 원인) java // 기존 쿼리@Query("SELECT ap FROM AirPurchase ap " + "LEFT JOIN FETCH ap.airPassengers passengers " + "LEFT JOIN FETCH passengers.specialRequests " + // ← 이 부분이 문제 "WHERE ap.productPurchaseId = :id") N+1 문제 발생 과정:AirPurchase 1개 조회AirPassengers N개 조회 (JOIN FETCH)각 AirPassenger의 specialRequests M개씩 조회 (JOIN FETCH)결과: 1 + N + (N × M) = 1 + N + NM 개의 쿼리..
아! 이제 정확히 이해했습니다. 이 문제는 JPA JOIN FETCH의 카테시안 곱(Cartesian Product) 문제입니다.문제 원인: 카테시안 곱데이터 구조: text AirPurchase (2011)├── AirPassenger (3015) - 김아빠│ ├── SpecialRequest (6) - 우선 탑승│ └── SpecialRequest (3) - 추가 수하물├── AirPassenger (3016) - 김엄마│ ├── SpecialRequest (1) - 휠체어 지원│ └── SpecialRequest (8) - 할랄 식사└── ... JOIN FETCH 쿼리 실행 결과: sql SELECT ap.*, passengers.*, special_requests.*FRO..
1. SQL 스크립트로 삽입데이터베이스에 직접 넣기2. Spring Boot 자동 실행(data.sql)src/main/resources/data.sql 경로에 파일을 만들어서 sql작성3. Flyway/Liquibase4. ApplicationRunner로 코드 삽입 JPA/ORM 프로젝트@Component@RequiredArgsConstructorpublic class DataInitializer implements ApplicationRunner { private final MemberRepository memberRepository; @Override public void run(ApplicationArguments args) { memberRepository.save..
문제상황 : 인텔리제이에서 빌드가 되지않아 작동이 안되고 sdk가 잡히지 않는 오류Gradle Wrapper가 생성되지 않는 오류~/.gradle\caches\jars-9가 생성되지 않고 계속 오류가 나는 오류 문제 원인sdk가 잡히지 않는 오류가 컴퓨터 변경 후 자바 버전이 너무 낮아서 sdk가 잘 잡히지 않는 다고 생각함백신문제는 아니라고 가정함 문제 해결1. java 버전을 11버전에서 17버전으로 올림2. 자바 환경변수 설정을 기존 이클립스 쓸때 잡혀있던 위치를 변경3.  /.gradle\caches\jars-9 폴더를 지우고 다시 빌드 해봄 > 오류      인텔리제이 설정에서 /.gradle\caches\jars-9 폴더 gradle빌드위치를 변경 해봄 > 오류4.  gradle버전을 변경해봄..
해달's code
'Project/Team Project(딱좋은여행)' 카테고리의 글 목록