ModelMapper
객체 프로퍼티를 다른 객체의 프로퍼티로 맵핑해주는 유틸리티
When
스프링 JPA사용시 새로 생성한 DTO를 엔티티를 변환해주는 작업을 해야할 때
ModelMapper 를 사용하면 쉽게 변환해준다.
Why
게터 세터 또는 빌더 패턴으로 작업할 경우 필드가 많을 수록 반복적인 작업량이 늘어난다.
How
- Install : 아래와 같이 의존성 주입으로 설치
maven
---
<dependency>
<groupId>org.modelmapper</groupId>
<artifactId>modelmapper</artifactId>
<version>2.3.8</version>
</dependency>
gradle
---
implementation group: 'org.modelmapper', name: 'modelmapper', version: '2.3.8'
- Spring Bean 등록
@Configuration
public class AppConfig {
@Bean
public ModelMapper modelMapper(){
return new ModelMapper();
}
}
- 실사용
DoEntity doEntity = doRepository.findById(1);
DoDto doDto = modelMapper.map(doEntity, doDto.class);