오늘은 만들어 놓은 API Controller를 Mapper와 Service 클래스를 이용하여 연결하는 법을 연습했다.
이때 가장 중요한 포인트는 기능적으로 분리된 계층 구조를 만드는 것이였다.
이는 받는 데이터로 만든 Dto클래스들로 담고 다시 응답을 리턴하는 API 계층과 Entity 클래스를 이용하여 비지니스 로직을 처리하는 Service 계층에 연결하는 방법에서 출발한다.
Entity 클래스는 API 계층에서 전달받은 요청 데이터를 기반으로 서비스 계층에서 비지니스 로직 처리를 위한 데이터를 전달받고, 비지니스 로직 처리를 마친 결과 값을 API 계층으로 다시 리턴하는 역할을 한다.
이때 계층별로 그리고 기능적으로 역할을 완전히 분리 시키기 위해 Mapper를 구현하여 DTO to Entity, Entity to ResponseDto 의 역할을 전담할 수 있도록 한다.
맞닥뜨린 주의사항들
그래들을 통해 스프링을 빌드할때 프로그램이 롬복의 기능을 사용하고 있다면 build.gradle 파일에서 Dependencies를 세팅할때 롬북 관련 정보들이 먼저 위치하여야 한다.
이는 롬복 애너테이션들로 구현한 기능들이 활성화 되기 위해선 롬복 그 자체가 먼저 활성화가 되어야 하기 때문으로 이해할 수 있다.
더 알아보아야 할 내용들
매퍼사용시 VO에 대해서