OK、私はすべてを試しましたが、これを機能させることはできません:
私は次の表を持っています:
- user_id int、users.idを参照します
- platform_id int、platforms.idを参照します
- field1
- field2
- ..。
私の主キー(DB内および論理的に)はとの組み合わせuser_id
ですplatform_id
。
UserクラスとPlatformクラスをメンバーとして持つ複合キーを作成したいと思います(通常のOneToOneまたはOneToManyリレーションで行うように)。
複合キーには、IDだけでなく、実際のクラス参照が必要です(後で、いくつかの計算で実際の参照が必要になったときに、はるかに簡単になります)。
さらに、このUserPlatformDataクラスとOneToMany関係を持つUserクラスが必要です。
UserとPlatformを使用してEmbeddableクラスを作成できましたが、JPAは常に挿入を行い、pkが同じであっても既存のレコードを更新することはありません(これによりduplicate entry for key primary...
)。
他の2つの参照(プリミティブではない)で構成される主キーを使用してクラスを作成するにはどうすればよいですか?