728x90
반응형

modelMapper

서로 다른 클래스의 값을 한 번에 복사하게 도와주는 라이브러리로

어떤 Object (Source Object) 에 있는 필드 값들을 자동으로 원하는 Object (Destination Object) 에 매핑 시켜주는 라이브러리

사용을 위해서는 의존성 추가 필요

implementation 'org.modelmapper:modelmapper:2.4.2'

 

주로 DTO와 같은 클래스로 데이터를 받은 후 원하는 클래스(Entity)에 넣어줄 때, Getter/Setter를 이용해 필드를 복사/붙여넣기하는 작업을 거침

이 때, 매핑해야할 필드가 다른 경우도 빈번함
즉, 다른 모델의 Object를 매핑해줘야하는 작업이 발생할 수 있는데 이런 단점들을 해결하기 위한 라이브러리임

 


modelMapper 사용법

// 선언
private final ModelMapper modelMapper;

// Order 객체
Order order = new Order(
        new Customer(new Name("FIRSTNAME", "LASTNAME")),
        new Address("STREET", "CITY")
);

// OrderDto class
class OrderDto {
    String customerFirstName;
    String customerLastName;
    String billingStreet;
    String billingCity;
}

// 사용법
OrderDto result = modelMapper.map(order, OrderDto.class);
// 실행결과
result = {
	customerFirstName = "FIRSTNAME"
	customerLastName = "LASTNAME"
	billingStreet = "STREET"
	billingCity = "CITY"
}

간단하게 매핑 완료

반응형
복사했습니다!