HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
🧚
[1기]최종 프로젝트 데브코스
/
🎫
[팀5] 코코단 (Coding & Coworking) - Triplan
/
🐞
문제 및 해결
🐞

문제 및 해결

MultipleBagFetchExcepion
JPA에서 Fetch Join의 조건은 다음과 같습니다.
  • ToOne은 몇개든 사용 가능합니다
  • ToMany는 1개만 가능합니다.
 
여기서 ToMany의 fetch join을 2개 이상 사용하면 MultipleBagFetchException이 발생합니다.
→ jojoldu님의 해결 방법
DynamicInsert, DynamicUpdate
  • 기대 결과
    • BaseEntity의 속성인 CreateBy, CreateAt가 Member 테이블에 데이터 Insert 시 create 관련 초기 값으로 생성자 id, 생성 시간이 들어가는 것
  • 발생 상황
    • CreateBy, CreateAt의 값이 null로 Member 테이블에 저장되는 것을 확인
  • 문제 해결 방법
    • BaseEntity에 "@DynamicInsert", "@DynamicUpdate" 추가
      • DynamicInsert : Insert 쿼리문에서 null인 field를 제외
      • DynamicUpdate : Update 쿼리문에서 null인 field를 제외
  • 코멘트
    • EntityListeners annotation 누락으로 인한 실수였습니다;;
 
컬럼 명으로 예약어를 쓰지 말자!!!!!
바보같이 date, order 썼다가 2시간 버렸당 ㅜㅜ
 
ID의 GenerateValue
AUTO와 IDENTITY 차이
GENRATE TYPE에 따른 성능차이
 
@AuthUser를 통해 User를 얻어오자
AuthUser
 
테스트할 때, schema.sql 과 data.sql을 사용해보자
Initial Data with Spring Boot
 
Custom Exception vs Standard Exception
Custom Exception
tecobol
 
Query DSL
QueryDSL 의존성 추가
Querydsl로 안전한 쿼리 작성하기
 
구아바 사용법
Guava Example