JAVA 공부 시작한지 벌써 만 3개월이 됐군요. 시간 참 빨라-
구글 헤메이는것도 힘들고 이렇게 정리하지 않으면 머리속에서 날아갈 것 같기 때문에
공부 도중 트러블 슈팅하는걸 다 올려보기로 마음 먹었습니다
프로젝트에 대해 간단하게 설명하자면 배당금 프로젝트로
야후 파이낸스에서 배당금 긁어다가 h2 DB에 저장하고 보여주는 그런 프로젝트입니다.
잘 짰다고 생각하고 배당금 정보를 긁어오는 POST API를 날려봤는데 어라라?
Cannot construct instance of `com.example.stock.model.Company` (no Creators, like default constructor, exist): cannot deserialize from Object value (no delegate- or property-based Creator)
뭐 대충 이런 에러가 뜨더군요
음음 생성자가 없다는 것이군 .. 근데 나 생성자 있는데 ,,, 기본 생성자가 없어서 그런가?
알고봤더니 @Builder는 생성자가 없는 경우에는 모든 멤버 변수를 파라미터로 받는 기본 생성자를 생성해주지만,
생성자가 있을 경우에는 따로 생성자를 생성하지 않는다고 합니다
그럼 아무것도 없는 생성자를 만들어줘야한다는건가 하고, 냅다 @NoArgsConstructor 붙이고 어플리케이션 재시동 했더니 안돌아갑니다
그래서 구글링 해 보니 @Builder와 @NoArgsConstructo를 같이 사용하고싶으면
@AllArgsConstructor도 같이 쓰거나 모든 필드를 가지는 생성자를 직접 만들어 줘야 한다더군요
그래서 @NoArgsConstructo와 @AllArgsConstructor를 같이 추가해줬더니 잘 돌아가고 잘 동작합니다.
기쁘네요 슈슝
빨간 상자 = 추가한 것
'Backend' 카테고리의 다른 글
눈물줄줄 인텔리제이 - Docker MYSQL 연결 에러 트러블슈팅/ ERROR 1045 (28000): Access denied for use (0) | 2023.05.18 |
---|---|
JAVA Optional (0) | 2023.05.18 |