>

다음 DB 모델을 고려하십시오 :

데이터 모델에는 동일한 기본 키를 공유하는 두 개의 테이블이 있는데 강력한 엔터티는 계정이고 약한 엔터티는 사용자입니다 (사용자는 계정의 PK를 끌어옵니다). 이것을 명심하십시오 : 계정 엔티티를 계정과 사용자 간의 UNIDIRECTIONAL 관계에서 소유자 엔티티로 만들 수 있습니까? 가능하면 어떻게 매핑이 가능합니까? 그렇지 않으면 왜 불가능합니까?

많은 감사합니다!

  • 답변 # 1

    @PrimaryKeyJoinColumn 를 사용하여 할 수 있습니다 :

    @Entity
    public class Account {
        @Id
        @GeneratedValue(strategy = GenerationType.IDENTITY)
        private Long id;
        @OneToOne(cascade = CascadeType.ALL, mappedBy = "account")
        @PrimaryKeyJoinColumn
        private User user;
        ...
    }
    
    

    사용자 테이블 :

    @Entity
    public class User {
        @Id
        private Long id;
        private String name;
        .....
    }
    
    

    자세한 내용은이것을보십시오.

관련 자료

  • 이전 typescript - 모듈 내부에서 별도의 404 찾을 수없는 페이지를 Angular로 표시
  • 다음 프롤로그 호출 가능 예상 정수 오류