spring 예약 프로젝트 3

반려견 돌봄 서비스 (4) - 엔티티 간의 연관관계 설계 차이점

반려견의 돌봄 예약이 발생하면 고객 전용 돌봄 예약 엔티티와 돌봄사 전용 돌봄 예약 엔티티에 동일한 데이터가 삽입하게 된다.      현재 나는 고객 시점 돌봄 예약 엔티티(CustomerReservation)과 돌봄사 시점 돌봄 예약 엔티티(SitterSchedule)를 나누어 쓰고 있는 상태이고, 각각 엔티티가 서로 모두 공통적인 필드를 갖고 있는 상태이다. (사진 상에서는 예약한 고객(customer), 돌봄을 하게 될 돌봄사(sitter)를 공통적으로 갖고 있음.)돌봄사 시점 돌봄 예약 엔티티인 SitterSchedule이 고객 시점 돌봄 예약 엔티티(CustomerReservation)에 의존하지 않고, 따로 고객과 돌봄사의 정보를 갖고 있다. 이 상황에서 다르게 할 수 있는 방법이 또 하나 있..

카테고리 없음 2025.02.09

반려견 돌봄 서비스 (2) - DDD(도메인 주도 개발)

회원의 정보(마이페이지)를 조회하는 로직을 구현을 아래처럼 해놓은 상태였었다.(모든 회원의 정보, 반려견을 보유한 회원의 정보(Role이 CUSTOMER인)) 순서대로 컨트롤러, 서비스, 리포지토리이다.        내가 그전에 구현해 놨던 방식이다. 컨트롤러에서 비즈니스 로직이 섞인 모습이다. 결론부터 말하자면 이 방식은 FM 방식이 아니고, 간단한 소규모 프로젝트에서나 사용할만한 가라(야매) 방식이었다. 이것을 어쩌다가 깨우치게 됐는지는 이 책을 읽고 내가 구현한 방식이 잘못됐었음을 알게 되었다.   이 책 안에서 방금 전 나와 같이 컨트롤러 레벨에서나 서비스 레벨에서 비즈니스 로직을 구현을 해도 무방은 하지만, 응용 서비스에 중요한 비즈니스 로직이 노출이 될 수도 있고, 복잡도가 증가해서 나중에 유..

Spring 2024.12.07

반려견 돌봄 서비스 (1) - ERD 작성

스프링 기반 반려견 돌봄 서비스 프로젝트 소개 🐾1. 프로젝트 개요실제로 집에서 현재 반려견을 키우고 있기도 하고, 프로젝트 주제를 선정을 하는 과정에서 나의 실제 일상생활 상황에 대입해서 개발을 하면 재미와 흥미를 갖고 할 수 있을 것 같아 반려견 돌봄 서비스로 주제를 선정하게 되었다.반려견 인구 1,500만 시대에 접어들며, 반려견 돌봄 서비스에 대한 수요가 증가하고 있다.이러한 니즈를 충족시키기 위해 **스프링(Spring)**과 **자바(Java)**를 활용하여 사용자 친화적인 반려견 돌봄 서비스를 개발하기로 했다.이 서비스는 반려견의 케어 기록 관리, 돌봄 일정 예약 등의 기능을 제공하여 사용자와 돌봄사와 상호작용할 수 있는 플랫폼을 목표로 하고 있다. 2. 주요 기능이 서비스는 아래와 같은 ..

Spring 2024.11.26