Skip to content

[feat] 캡슐 CRUD 구현 #16

Description

@jucheonsu

[feat] 캡슐 CRUD 구현

목적

  • 캡슐 생성, 조회, 수정, 삭제 기능 구현

  • 계층 구조(Entity → Repository → Service → Controller)를 바탕으로 기능 설계

  • 전역 예외 처리 및 단위 테스트 포함


TODOs

1. 엔티티(Entity) 및 DTO 설계

  • Capsule 엔티티 설계

  • Media 엔티티 설계 및 Capsule과 1:N 매핑

  • CapsuleType enum 정의 (NORMAL, TIME)

  • CapsuleRequestDto 작성

  • CapsuleResponseDto 작성


2. 저장소(Repository) 구현

  • CapsuleRepository 인터페이스 (JpaRepository 상속)

  • MediaRepository 인터페이스 (필요 시 구현)


3. 서비스(Service) 구현

  • CapsuleService 클래스 생성

  • createCapsule() 메서드 구현

  • getCapsuleById() 메서드 구현

  • updateCapsule() 메서드 구현

  • deleteCapsule() 메서드 구현


4. 컨트롤러(Controller) 작성

  • CapsuleController REST API 엔드포인트 작성

    • POST /api/capsules

    • GET /api/capsules/{id}

    • PUT /api/capsules/{id}

    • DELETE /api/capsules/{id}

  • MultipartFile 파라미터 처리 및 DTO 연동


5. 전역 예외 처리 설정

  • CapsuleException 사용자 정의 예외 클래스 작성

  • ErrorCode enum 정의

  • ErrorResponse DTO 설계

  • GlobalExceptionHandler 클래스 구현


6. 테스트 및 검증

  • Postman을 활용한 API 테스트 수행

  • JUnit + AssertJ로 서비스 계층 단위 테스트 작성

Metadata

Metadata

Assignees

Labels

Fields

No fields configured for Feature.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions