[Study-1주차] PetClinicProject 기능 명세 + 개념 정리 + 2주차 과제

2023. 3. 19. 17:21· Study/Pet-Clinic-Project
728x90

 

[Study-0주차] Study 진행 방식

 

[Study-0주차] Study 진행 방식

https://github.com/spring-projects/spring-petclinic GitHub - spring-projects/spring-petclinic: A sample Spring-based application A sample Spring-based application. Contribute to spring-projects/spring-petclinic development by creating an account on GitHub.

soohykeee.tistory.com

 


 

3/10일 첫 스터디 그룹의 방향성과 진행에 대해 얘기하는 시간을 가졌고,
3/17일에는 저번 스터디 때 남겨준 과제를 각자 발표하고 피드백 하는 시간을 가졌다.

 

우선적으로 앞서 1주차의 과제를 정리해보면 다음과 같다.

  • 우리가 진행할 프로젝트인 PetClinic Project의 기능명세 정리
  • 개념 정리
    • Spring 이란?
    • Springboot 란?
    • JPA 란?
    • ORM 이란?

 


 

PetClinic Project의 기능 명세 정리

 

해당 프로젝트는 애완동물 진료소 서비스를 제공하는 프로젝트이다.

홈페이지

  • Owners : 소유자(주인)
    • 소유자 등록 / 수정
    • 모든 소유자 리스트 조회 / 소유자 조회 / 상세 정보 조회
    • 소유자가 기르는 애완동물(반려동물) 리스트 출력
    • 애완동물(반려동물) 등록 / 수정
  • Verterinarians : 수의사
    • 모든 수의사 리스트 조회 / 수의사 조회 / 상세 정보 조회
    • 수의사 정보 수정
    • 수의사 담당 애완동물 리스트 조회
  • Pet Types : 애완동물 종류
    • 애완동물 종류 등록 / 수정
    • 모든 애완동물 종류 리스트 조회 / 상세 정보 조회
  • Specialties : 수의사 전문 분야
    • 전문 분야 등록 / 수정
    • 모든 전문 분야 리스트 조회
  • Visits : 방문 정보
    • 애완동물 방문 정보 등록 / 수정 / 삭제
    • 해당 소유자의 방문 정보 리스트 조회

 

 

Table 구조

  • Owners (소유자, 주인)
    • id : PK
    • first_name : 이름
    • last_name : 성
    • address : 주소
    • city : 도시
    • telephone : 전화번호
  • Types (애완동물 종류) - Enum
    • name : 종류 이름
  • Pets (애완동물)
    • id : PK
    • name : 이름
    • birth_date : 생년월일
    • (수정) type : 애완동물 종류 
    • ownder_id : 소유자 ID (FK)
  • Visits (방문 정보)
    • id : PK
    • pet_id : 애완동물 ID (FK)
    • visit_date : 방문 날짜
    • description : 방문 내용
  • Specialties (전문 분야) - Enum
    • name : 전문 분야 이름
  • Veterinarians (수의사)
    • id : PK
    • first_name : 성
    • last_name : 이름
    • (추가) specialities :  specialties 이름 

 

수정하는 부분이 있다면, Types 와 Specialties 클래스는 Enum 클래스로 두어 설정해 줄 예정이다.

 

 


 

개념 정리

 

[Study] Spring 정리 (IoC, DI, AOP, POJO, MVC)

 

[Study] Spring 정리 (IoC, DI, AOP, POJO, MVC)

Spring 이란? 정의 Spring이란 간단히 말하면 Java 기반의 웹 어플리케이션을 개발할 수 있는 오픈소스 프레임워크이다. 더욱 자세하게 용어를 풀어 설명하자면 다음과 같다. 오픈소스 : 용어에서 알

soohykeee.tistory.com

 


 

[Study] SpringBoot 정리

 

[Study] SpringBoot 정리

SpringBoot 란? 정의 SpringBoot란 Spring을 더 쉽게 이용하기 위한 도구라고 생각하면 쉽다. Spring은 다양한 기능을 제공해주지만, 그만큼 기존의 개발자들은 Spring을 사용하기 위해서는 일일히 모든 설

soohykeee.tistory.com

 

 

 


 

2주차 과제

2주차 과제는 다음과 같다.
Pet-Clinic Project의 ERD를 보고, 모든 클래스 생성 + 의존성 주입만, 기능 개발은 X

각 본인 Github - Repository에 '초성 + PetClinic-Study' Project 생성 후 개발하도록 했다.

각 branch를 생성한 후 모든 코드는 기능별로 commit을 하고, 최종 push를 한다.
push를 완료한 후, merge 하기 전 코드 리뷰를 진행 한 후, merge를 한다.

 

개발환경은 다음과 같다.

  • Java 17
  • Springboot 3.0.4
  • Gradle
  • IntelliJ
  • H2

 

Commit 규칙은 다음과 같다.

  • 기능별로 개발을 커밋
  • 푸쉬 하나당 branch 하나
  • commit 메시지 : type 기능
    • Feat : 기능 추가 첫 커밋
    • Fix : 장애/에러 수정
    • Docs : 문서 수정에 대한 커밋
    • Style : 코드 스타일 혹은 포맷 등에 관한 커밋
    • Refactor : 코드 리팩토링에 대한 커밋

 

 

 


 

 

 

728x90
저작자표시 (새창열림)
'Study/Pet-Clinic-Project' 카테고리의 다른 글
  • [Study-3주차] PetClinicProject CRUD - ②
  • [Study-3주차] PetClinicProject CRUD - ①
  • [Study-2주차] PetClinicProject 초기 설정 + 클래스 생성 + 코드 설명
  • [Study-0주차] Study 진행 방식
soohykeee
soohykeee
Computer Science. 2017~2023 / Java, Spring, Backend
Coding_Computer Science. 2017~2023 / Java, Spring, Backend
soohykeee
Coding_
soohykeee
전체
오늘
어제
  • 분류 전체보기
    • 회고
    • Info
      • 개념 정리
      • 정보
    • Study
      • Pet-Clinic-Project
      • Concept
    • Inflearn
      • 스프링 핵심 원리_기본편
      • Git
    • 코드로 배우는 스프링 부트 웹 프로젝트
      • Guestbook
      • MovieReview
      • Security & API

블로그 메뉴

  • 홈
  • 방명록
  • Github

인기 글

최근 댓글

최근 글

250x250
hELLO · Designed By 정상우.v4.2.1
soohykeee
[Study-1주차] PetClinicProject 기능 명세 + 개념 정리 + 2주차 과제
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.