<Spring Boot> Could not locate appropriate constructor on class 오류 해결 및 @AllArgsConstructor, @NoArgsConstructor

MinsHouse·2022년 5월 19일
0

-Error Log-

Could not locate appropriate constructor on class : com.example.demo.model.contract.ClientDTO; nested exception is java.lang.IllegalArgumentException: Could not locate appropriate constructor on class : com.example.demo.model.contract.ClientDTO

Spring Boot로 웹 제작 프로젝트를 하는 중 위와 같은 생성자 오류가 떴다.😅
위와 같은 오류를 뜬 것은 ClientDTO 클래스에 @AllArgsContructor 어노테이션을 넣지 않아서 생긴 오류였다.

처음 만든 ClientDTO

@Data
public class ClientDTO {

    private Integer ClientIndex;
    private Integer ClientId;
    private String clientName;
}

오류를 해결한 ClientDTO

@Data
@AllArgsContructor
public class ClientDTO {

    private Integer ClientIndex;
    private Integer ClientId;
    private String clientName;
}

이렇게 생성자 오류가 났을 때 생성자 어노테이션 주입을 잘 했는지 확인을 하면 된다.!!😀

생성자 오류를 해결했으니 헷갈리기 쉬운 생성자 어노테이션을 알아보겠습니다.
주로 자주 쓰고 볼 수 있는 어노테이션은 @AllArgsContructor과 @NoArgsContructor입니다.

@AllArgsContructor

-클래스에 존재하는 모든 필드에 대한 생성자를 생성
-ex) Client client = new Client(1, 1, "Kim");

@NoArgsContructor

-어떤 파라미터 값도 존재하지 않는 생성자를 생성
-ex) Client client = new Client();

profile
MiniBee

0개의 댓글