Repository는 domain 패키지의 interface로 구현체는 infra 패키지에 구현 클래스로.
@Entity
@Embeddable
@Embedded
리포지터리와 도메인 모델의 구현 기술은 거의 바뀌지 않는다. 따라서 JPA를 사용할 때 JPA 모델을 Domain으로 사용하는 건 그렇게 타협해볼만한 일이다.