본문 바로가기

오류

[Springboot] mysql List, null 에러 @Builder.Default

Cannot invoke "java.util.List.add(Object)" because "this.red" is null

오류 ㅠㅠ 

 

@OneToMany(mappedBy = "game", cascade = CascadeType.ALL, orphanRemoval = true)
    List<Player> red = new ArrayList<>();

엔티티 내에 이런 코드가 있다. 인터넷 검색시

builder 메서드 사용시, List 필드를 초기화 해줘야한다. (.컬럼(new ArrayList<엔티티>()) 이런 식으로)

 

좀 더 편한 방법을 찾아보니

@Builder.Default 애노테이션을 붙여주면, builder 패턴으로 인스턴스 생성시, 지정한 값으로 초기화 시켜주는 방법이다.

 

@OneToMany(mappedBy = "game", cascade = CascadeType.ALL, orphanRemoval = true)
    @Builder.Default
    List<Player> red = new ArrayList<>();

이렇게 하니 멀쩡하게 작동한다 ㅎㅎ!