반응형
SMALL
에러 발생 🚨 Cannot invoke add 어쩌구 is null 요런 에러는 십중팔구 99퍼 List 필드에 초기화를 안해줘서 발생하는 에러인데,, 나는 Entity 필드 new ArrayList<>() 초기화 해줬는데 왜 안되지...? 😧 멘탈이 잠깐 나갈 뻔 했다.
에러 로그를 타고 타고 들어가서 고심한 결과,,,
여기!!! Order 생성 메소드에서 Order 생성을 빌더로 하고, orderItems 필드는 초기화를 안 해줬더랬다~ 그러니 orderItems는 null로 초기화 되고, NullPointerException 에러가 발생할 수밖에 😳
그래서 빌더 대신 생성자 방식으로 Entity를 생성해줬고, 그 결과 테스트가 아주 잘 통과된다! 🤩
하하하. 빌더를 잘못 쓰면 안된다고만 듣고 그 사례는 한 번도 못 봤는데 덕분에 직접 경험해봤다 :D
** List 관련 필드가 있는 객체(Entity)에서는 빌더를 신중하게 사용하자! **
반응형
LIST
'Server > Spring' 카테고리의 다른 글
[우당탕탕 개발 일지] com.querydsl.core.types.ExpressionException 에러: 기본 생성자 필요 (0) | 2023.03.22 |
---|---|
[우당탕탕 개발일지] Querydsl 초기 세팅: 버전 5 기준 (0) | 2023.03.19 |
[우당탕탕 개발 일지] JUnit5로 예외 테스트 (1) | 2023.02.19 |
[날카로운 질문하는 머쓱이] 빈 스코프에 따른 생명 주기 (0) | 2022.12.24 |
[날카로운 질문하는 머쓱이] N+1 문제 (0) | 2022.12.14 |