JAVA
제네릭(Generic) 사용한 클래스를 @Builder로 객체 생성하기
제뉴어리맨
2022. 9. 19. 15:58
관련 클래스
- SingleResponseDto
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Setter;
@Builder
@Setter
@AllArgsConstructor
public class SingleResponseDto <T> {
private T data;
}
- MajorResponseDto
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
@NoArgsConstructor
@Setter
@Getter
public class MajorResponseDto {
private Long majorId;
private String majorName;
private String majorCode;
}
- 문제의 구간
SingleResponseDto<MajorResponseDto> singleResponseDto = SingleResponseDto.builder().data(majorResponseDto).build();
위에 그대로 사용하면 아래와 같은 에러 발생
- 문제 구간 해결 방법
SingleResponseDto<MajorResponseDto> singleResponseDto = SingleResponseDto.<MajorResponseDto>builder().data(majorResponseDto).build();
참조 : https://akageun.github.io/2019/06/30/lombok-builder-generic.html