[Spring] 스프링 입문 웹 개발 기초(8)

비즈니스 요구사항 정리

이 프로젝트는 spring 생태계는 전반적으로 어떻게 일어나고, 동작하는지 알아내는 것이 목표라서 간단한 비즈니스로 한다.

비즈니스 요구사항 정리

  • 데이터 : 회원ID, 이름
  • 기능 : 회원 등록, 조회
  • 아직 데이터 저장소가 선정되지 않음(가상의 시나리오)

데이터 저장소가 선정되지 않았다는 뜻은 그냥 가상으로 그렇게 한다는 뜻이다. 전반적인 spring을 더 잘 알아가기 위한 특수 장치라고 생각하면 된다.

일반적인 웹 애플리케이션 계층 구조

spring24

  • 컨트롤러 : 웹 MVC의 컨트롤러 역할
  • 서비스 : 핵심 비즈니스 로직 구현 예) 회원은 중복되면 안된다 같은 것
  • 리포지토리 : 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리
  • 도메인 : 비즈니스 도메인 객체, 예) 회원, 주문, 쿠폰 등등 주로 데이터베이스에 저장하고 관리됨

클래스 의존관계

spring25

회원 리퍼지토리에 인터페이스를 만들고 구현체를 우선은 메모리 구현체로 만들 것이다.

단순하게 메모리로 저장하는 것으로 구현체를 만들고, 향후에 바꿔끼기 위한 인터페이스 정의함.

Leave a comment