public interface TodoService {
void register(TodoDTO dto);
}
public class TodoServiceImpl implements TodoService{
private final TodoMapper todoMapper;
private final ModelMapper modelMapper;
@Override
public void register(TodoDTO dto){
log.info(dto);
TodoVO vo = modelMapper.map(dto, TodoVO.class);
log.info(vo);
todoMapper.insert(vo);
}
}
@Autowired
private TodoService service;
@Test
public void todoReg(){
TodoDTO dto = TodoDTO.builder()
.title("hello")
.localDate(LocalDate.now())
.writer("hello")
.build();
log.info(dto);
service.register(dto);
}
@Getter
@Setter
@Builder
@ToString
@AllArgsConstructor
@NoArgsConstructor
public class TodoVO {
private Long tno;
private String title;
private LocalDate localDate;
private boolean finished;
private String writer;
}
ModelMapper는 해당 클래스의 기본 생성자를 이용해 객체를 생성하고 setter를 이용해 매핑을 한다.
라는 레퍼런스를 발견했고 VO선언에 있어서 @Setter를 추가하자 바로 해결되었다.