- 엔티티와 테이블 엔티티를 유사하게 유지하면서, 객체 지향의 장점과 RDBMS의 장점을 모두 살리는 방법을 고민 🤔
- DDD에서 엔티티의 식별자를 유지하고, 데이터 변경 시 사용자 및 날짜를 관리하는 '데이터바이' 클래스 활용 🗓️
- 객체에서는 UUID를 사용하고, 테이블 저장 시 ULID를 사용하는 방식으로 식별자 필드 관리 🔑
- 엔터프라이즈 아키텍처 패턴의 식별자 필드와 포함값 개념을 마이바티스와 함수형 프로그래밍에 접목 💡
- 데이터베이스 스키마 설계는 DBA의 선호도에 따라 결정되는 경우가 많음 👨💼
- 마이바티스 타입 핸들러를 사용하여 객체와 데이터베이스 간의 데이터 타입 변환을 자동화 🔄
- 포함값 패턴은 DDD의 VO(Value Object) 개념과 관련 있으며, 어그리게이트 맵핑 또는 컴포즈라고도 불림 🧩
- 마이바티스의 어소시에이션 태그를 사용하여 한 객체를 테이블의 여러 필드로 맵핑하는 데이터바이 구현 🔗
- 실드 인터페이스를 활용하여 데이터바이의 다양한 구현체(크리에이티드, 모디파이드)를 유연하게 관리 🛡️
- 데이터베이스에 저장 시 기본적으로 생성자, 생성 시간, 수정자, 수정 시간 필드를 포함하는 규칙 적용 ⚙️