JPA에서 1:N 관계를 맺는 엔티티를 List안에 넣고 이를 new ArrayList로 초기화를 해 주었습니다. Builder를 통해 객체를 생성할 수 있도록 만들었는데, 테스트코드를 작성하던 와중에 List 부분에서 값을 넣으려고 할 때, NPE가 발생하는 문제가 생기게 되었습니다.
Build를 통해 객체를 만들었는데, 왜 초기화가 안될까? 고민 하던 중에, 값을 주입을 해주지 않으면 null로 초기화가 된다고 합니다. build에 값이 주입 되지 않을 때, 기본 값을 할당해주기 위해서는 크게 두가지의 방법을 사용해줄 수 있습니다. 1.
생성자에 입력 값을 비교하여 값을 할당해주기 public SettlementRecipient(..., List settlementPayments) { ... this.settlementPayments = settlementPayments == null ? new ArrayList() : settlementPa...