MapStruct가 클래스간 매핑 코드를 만들때 타겟 클래스의 Getter, Setter를 기반으로 코드를 생성한다.
다만 MapStruct 사용을 위해 클래스에 Setter를 만드는것이 꺼림칙 하다면, Builder로 대체할 수 있다ㅡ.
@Mapper(componentModel = "spring")
public interface MemberMapper {
MemberMapper INSTANCE = Mappers.getMapper(MemberMapper.class);
MemberEntity toMemberEntity(MemberRegistDto registDto);
MemberResult toResult(MemberEntity memberEntity);
}
IDE는 MapStruct 코드 생성을 올바르게 처리하지 못할 수 있다.
IntelliJ IDEA와 같은 IDE를 사용하는 경우, "Annotation Processors" 설정을 확인하여 MapStruct를 활성화해야 할 수 있다.
다음은 IntelliJ IDEA에서 Annotation Processors 설정을 확인하는 방법이다.