Task Tracking App for Beginners Part 2: Continue to build your FIRST Spring Boot App
- DTO는 도메인 모델과 API 계약을 분리하여 클라이언트에 노출되는 데이터를 제어합니다. 🤝
- DTO 구현에 Java Record를 사용하여 불변 데이터 클래스를 간결하게 정의하고, 상용구 코드를 줄입니다. 📝
- DTO에는 API 계약에 필요한 필드만 포함하며, 내부 타임스탬프나 JPA 관계 같은 구현 세부 사항은 제외합니다. ✂️
TaskListDTO는 count와 progress와 같은 계산된 필드를 포함하여, 엔티티에 없는 추가적인 정보를 제공합니다. 📊
- 매퍼는 엔티티와 DTO 간의 객체 변환을 처리하여, 관심사 분리, 재사용성 및 일관된 변환 규칙을 제공합니다. 🔄
- MapStruct와 같은 라이브러리 대신 인터페이스와 구현 클래스를 통해 매퍼를 수동으로 구현하여 명확한 제어를 가능하게 합니다. 🛠️
@Component 어노테이션을 사용하여 매퍼 구현체를 Spring Bean으로 등록하고, 애플리케이션 전반에 걸쳐 의존성 주입을 가능하게 합니다. 💉
TaskListMapper는 Task 컬렉션 처리, count 및 progress와 같은 파생 필드 계산 등 더 복잡한 매핑 로직을 포함합니다. 🧠
- Spring Data JPA 리포지토리 인터페이스를 사용하여 데이터베이스에서 데이터를 영속화하고 검색하는 방법을 설정합니다. 💾
데브허브 | DEVHUB | Task Tracking App for Beginners Part 2: Continue to build your FIRST Spring Boot App