에러
java.lang.StackOverflowError: null
원인
Lombok의 @Data 어노테이션
@RequiredArgsConstructor
@Service
public class PortfolioService {
private final UserRepository userRepository;
@Transactional
public List<Portfolio> portfolList(User user) {
System.out.println("portfolioService 들어옴");
List<Portfolio> portfolios = user.getPortfolios();
System.out.println("포폴 : " + portfolios);
return portfolios;
}
}
위 코드의 List<Portfolio> portfolios = user.getPortfolios();
에서 에러 발생
1. user 엔티티의 toString() 메서드 호출
2. portfolio 엔티티의 toString() 메서드 호출 (Portfolio의 toString에는 User 엔티티가 정의되어 있기 때문)
1~2번 무한 반복으로 에러 발생
해결
User Entity에 @ToString(exclude = "portfolios") 옵션을 추가