관리 메뉴

제뉴어리의 모든것

제네릭(Generic) 사용한 클래스를 @Builder로 객체 생성하기 본문

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