비즈니스 요구사항 정리
이번시간부터는 회원관리 예제를 만들며 스프링부트를 이해해보자…
먼저 비즈니스 요구사항을 정리하고
회원 도메인과, 회원도메인 객체를 저장하고 불러오는 저장소(리포지토리객체)를 만들 것임.
그리고 리포지토리객체가 잘 동작하는지 테스트 케이스를 만든다. Junit이라는 테스트 프레임워크로 할 것임.
이번시간에는 비즈니스 요구사항을 정리할 것이다.
아주 간단하다. 데이터도 회원 ID, 이름 두개밖에 없고, 기능도 등록, 조회밖에 없다.
왜냐? 우리는 직접만드는게 목표가 아니고 만들면서 스프링부트를 이해하는 것이니까.
일반적인 웹 어플리케이션의 계층구조는 다음과 같다고 한다..
도메인은 회원, 주문, 쿠폰처럼 DB에 주로 저장되는 비즈니스 도메인 객체들을 말한다.
컨트롤러 클래스는 앞에서 살펴봤고… 서비스는 무엇인가? 서비스클래스에 핵심 비즈니스 로직이 들어가 있다. 회원은 중복가입이 안된다던가…
서비스는 이 비즈니스 도메인 객체를 가지고 핵심 비즈니스 로직이 동작하도록 만든 클래스임.
그럼 리포지토리는 무엇인가? 도메인 객체를 db에 저장하고 관리하는 역할을 한다.
클래스 의존관계는 다음과 같다.