JPA

ModelMapper 사용 법

MIN우 2023. 1. 16. 18:42
728x90
compile group: 'org.modelmapper', name: 'modelmapper', version: '2.3.5'

 

ModelMapper 빈 등록

@Configuration
public class AppConfig {
    @Bean
    public ModelMapper modelMapper(){
        return new ModelMapper();
    }
}

 

ModelMapper 자동 매핑

private final BoardRepository boardRepository;
    public List<BoardDto> getBoardList(){



        return boardRepository.findAll()
                .stream()
                .map(board->modelMapper.map(board,BoardDto.class))
                .collect(Collectors.toList());
    }

DTO 선언부

package com.example.boardservice.dto;

import com.example.boardservice.Entity.Board;
import lombok.*;

import javax.validation.constraints.NotNull;
import java.time.LocalDateTime;

@Getter
@Setter
@ToString
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class BoardDto {

    private Long id;
    private String writer;
    private String title;
    private String content;
    private LocalDateTime createdDate;
    private LocalDateTime modifiedDate;

    public Board toEntity(){

        Board build=Board.builder()
                .id(id)
                .writer(writer)
                .title(title)
                .content(content)
                .build();
        return build;

    }

}
728x90