본문 바로가기
Spring/JPA 1

5. 상품 도메인 개발

by wch_t 2023. 11. 6.

객체지향적 프로그래밍

[도메인 주도 설계]

 

(ex. OrderService : 비즈니스 로직 )

- Service에서 엔티티를 가져와서 비즈니스 로직을 작성하기보다는,

   Entity의 핵심 비즈니스 로직을 해당 엔티티 내에 존재하게 코드를 작성한다. 

   즉, Service는 비즈니스 로직을 호출하는 역할만 한다.

 

 

(ex. ItemService, MemberService : DB 로직)

- Service는 Repository에 위임만 하는 형식이다.

   간단한 경우에는, Controller에서 바로 Repo에 접근해서 Service(DB 로직)을 실행해도 되는지에 대해서, 잠깐 고민해보자!

   

   → Controller는 요청을 처리하고 적절한 Service를 호출하고, DB 로직을 실행하는 것이 객체지향적

        Service 내부에서는 Repo를 이용하여 데이터베이스와 상호작용하는 것이, 유지보수에 용이하다.

 

 

 

Q. 비즈니스 로직 구현, Entity vs Service

https://www.inflearn.com/questions/117315/%EB%B9%84%EC%A7%80%EB%8B%88%EC%8A%A4-%EB%A1%9C%EC%A7%81%EA%B5%AC%ED%98%84-entity-vs-service

'Spring > JPA 1' 카테고리의 다른 글

7. 웹 계층 개발  (0) 2023.11.13
6. 주문 도메인 개발  (0) 2023.11.07
4. 회원 도메인 개발  (0) 2023.11.06
3. 애플리케이션 구현 준비  (0) 2023.11.06
2. 도메인 분석 설계  (0) 2023.08.16