728x90
✏️ 문제
@Getter @Setter 어노테이션이 적용된 ResponseDto에 테스트 코드 작성을 위해
@AllArgsConstructor어노테이션을 적용한 이후로 등록할 때 생성자 관련 오류가 발생하였다.
✏️ 원인
@AllArgsConstructor : 클래스가 가지는 모든 필드에 대한 매개변수가 포함된 생성자를 생성
생성자가 하나도 없을 때만 컴파일러가 자동으로 기본 생성자를 추가하므로
해당 어노테이션을 추가하면 기본 생성자가 사라짐
→ 역직렬화 (바이트 스트림을 다시 객체형태로 변환하는 작업)가 불가능
✏️ 해결
@NoArgsConstructor : 매개변수가 없는 기본 생성자를 생성
해당 어노테이션을 사용하여 기본 생성자를 자동으로 생성
DTO에는 @NoArgsConstructor 를 습관화 하자...
728x90
'개발일기 > Java' 카테고리의 다른 글
객체지향 프로그래밍(OOP) (0) | 2023.05.30 |
---|---|
테스트 코드 작성 삽질 기록 (1) | 2023.04.21 |
unknown enum constant When.MAYBE 오류는 아니지만! (0) | 2023.04.13 |
NoSuchElementException 에러 해결 (0) | 2023.04.12 |
CommandAcceptanceException 해결 (0) | 2023.04.12 |