[PerfumePedia] JPA Service 설계

김준영·2023년 11월 20일

Perfume Pedia

목록 보기
1/1
post-thumbnail

기존 역할 배분은 이랬다.
나: Domain, Repository, Service 작성, Swagger 작성
재우: MySQL과 수집한 데이터 삽입에 대한 코드 작성
경은: API Controller 및 DTO 작성

이 중 Service 작성을 재우에게 맡기기로 했다.

Service의 역할

1. 수집 데이터 저장

Domain과 Repository를 기반으로 수집한 데이터 저장 로직을 처리해야한다.

  • Json파일을 읽고, 데이터베이스에 저장해야하는데 이 과정에서 검증이 필요하다.
  • 기존에 데이터베이스에 저장된 내용인지, 수정된 내용이 있는지 확인 해야한다.

2. DTO 생성 및 초기화

데이터베이스에 저장된 데이터를 DTO에 저장하고, 반환할 수 있어야한다.

  • Repository를 이용해 데이터베이스에 저장된 값을 Domain으로 읽고 이를 DTO에 저장해야한다.
  • Controller에 따라 필요한 DTO가 다르므로, Controller와 상의해서 미리 DTO를 설계 해야한다. -> 이부분은 경은이가 미리 작성해 뒀다.

고려사항

1. TDD

코드 작성시 누락된 부분이 생길 수 있으므로 TDD를 기반으로 작성한다.

  • 기능 테스트 케이스를 작성한다.
  • Service 코드를 아직 작성하지 않았으니, 오류가 발생한다.
  • 기본적인 Service 코드를 작성하고, 오류를 해결한다.
  • refactoring을 통해 코드를 개선한다.
  • 다음 기능을 위와 같이 반복하여 작성한다.

2. 주석작성

자바의 /**/ 주석을 이용하여 작성한다.

0개의 댓글