꾸준히 하고싶은 개발자

스프링 핵심원리 이해 1 -예제 만들기 본문

Spring Boot

스프링 핵심원리 이해 1 -예제 만들기

프라우스 2023. 4. 8. 18:32

프로젝트 생성

  1. 프로젝트 생성하기 인테리제이 프레임워크 나 스프링부트내 만들어진 홈페이지 에서만들수있다. 나는여기서 홈페이지 해보겠습니다

start.spring.io http://start.spring.io/

Spring Boot  : 정식 릴리즈 중 가장 최신 ( 뒤에 SNAPSHOT 이나 M1,M2 등이 없는 버전) 선택!

작성일( 2023/3/12 ) 기준 2.7.9

Project Metadata

  • Group : (기업 도메인 명)
  • Artifact : (결과물)
  • Name : (결과물)
  • Description : (프로젝트 설명)
  • Package name : (패키지 명)
  • Packaging : Jar 선택

※ Jar 와 War의 차이점

  • Java : 11

선택하고나서 GENERATE 하면 된다. 생성

비즈니스 요구사항과 설계

회원회원을 가입하고 조회할 수 있다.

회원은 일반과 VIP 두 가지 등급이 있다.

회원 데이터는 자체 DB를 구축할 수 있고, 외부 시스템과 연동할 수 있다. (미확정)

주문과 할인 정책회원은 상품을 주문할 수 있다.

회원 등급에 따라 할인 정책을 적용할 수 있다.할인 정책은 모든 VIP는 1000원을 할인해주는 고정 금액 할인을 적용해달라. (나중에 변경 될 수 있다.)

할인 정책은 변경 가능성이 높다.

회사의 기본 할인 정책을 아직 정하지 못했고, 오픈 직전까지 고민을 미루고 싶다.

최악의 경우 할인을 적용하지 않을 수 도 있다. (미확정)

요구사항을 보면 회원 데이터, 할인 정책 같은 부분은 지금 결정하기 어려운 부분이다. 그렇다고 이런 정책이 결정될 때 까지 개발을 무기한 기다릴 수 도 없다. 우리는 앞에서 배운 객체 지향 설계 방법이 있지 않은가!

인터페이스를 만들고 구현체를 언제든지 갈아끼울 수 있도록 설계하면 된다. 그럼 시작해보자.> 참고: 프로젝트 환경설정을 편리하게 하려고 스프링 부트를 사용한 것이다. 지금은 스프링 없는 순수한

자바로만 개발을 진행한다는 점을 꼭 기억하자! 스프링 관련은 한참 뒤에 등장한다.

회원 도메인 설계

회원 도메인 요구사항회원을 가입하고 조회할 수 있다.회원은 일반과 VIP 두 가지 등급이 있다.회원 데이터는 자체 DB를 구축할 수 있고, 외부 시스템과 연동할 수 있다. (미확정)

회원 도메인 협력관계

회원 엔티티

**회원 등급(**enum Grade)

회원 등급: 기본과 VIP로구분한다.

회원 엔티티

Member class

생성자 와 데이터를 가져오고 뽑아내는 getter setter 생성하기

**회원 저장소 인터페이스(**interface MemberRepository)

회원 저장기능:save()

회원 조회 기능:findId()

메모리 회원 저장소 구현(MemoryMemberRepository)

회원 서비스 인터페이스(MemberService)

Join 회원가입

findMember(memberId):회원 조회

회원 서비스 구현체(MemberServiceImpl)

join에서 save를 호출하면 다형성에 의해서 MemorymemberRepository를 호출하면 MemorymemberRepository 안에 save 가 호출된다.

회원 클래스 다이어그램

실행과 테스트하기

인텔리제이 단축키:psvm ==public static void main(String[] args)

실행하기 +테스트하기

'Spring Boot' 카테고리의 다른 글

스프링 핵심 원리  (0) 2023.04.05
AOP  (0) 2023.03.16
스프링 DB 접근 기술  (0) 2023.03.15
스프링 빈과 의존 관계  (2) 2023.03.14
회원관리 예제 -벡엔드 개발  (0) 2023.03.12