roon-replica / toy-blog-BE

토이 프로젝트 / 블로그 기능 / 백엔드만 / 구현,협업,배포 연습
0 stars 0 forks source link

#60 JPA 엔티티 매핑 개선 #65

Closed roon-replica closed 1 year ago

roon-replica commented 1 year ago

작업 내용

sunwng commented 1 year ago

postId 객체를 새로 만들어서 그 안에 Id를 넣는 방식으로 개선한 이유가 있을까요?

roon-replica commented 1 year ago

단순 문자열 타입보단 id라고 명시적인 타입으로 표현하는게 더 좋다고 생각했습니다. 추가로 id 유효성 체크 로직도 id 클래스 안에 만들어서 id 설정 시 예상치 못한 오류도 방지할 수 있다는 장점이 있는 것 같습니다! DDD 구현과 관련된 개념이라 다른 이유도 많을 것 같은데.. 제가 생각하기론 이정도입니다. 식별자가 꽤 중요한 것이라서 타입을 따로 만들도록 권장하는 것 같다고도 추측합니다!

sunwng commented 1 year ago

추가로 한가지 궁금한건, 필드가 하나인 객체여도 Embeddable 어노테이션으로 추가를 해줘야하는건가요?

roon-replica commented 1 year ago

entity 내부의 value 타입을 정의할 땐 embeddable 어노테이션을 사용해줘야하는 것 같습니다! https://www.baeldung.com/jpa-embedded-embeddable#embeddable