0
私はJPAにマップする既存のDDLを持っています。外部キーを持つエンティティファントムテーブルとエンティティへの参照
私はすでにUSERS JPA @EntityにUSERS SQLテーブルをマップしています。
create table USERS (
-- a bunch of fields
primary key (id),
foreign key FK_USERS_CONTACT (CONTACT_ID) references CONTACTS(ID),
foreign key USER_SPEAKS_NATIVE_LANGUAGE (NATIVE_LANGUAGE) references LANGUAGES(ID),
foreign key USER_HAS_PREFERRED_TIMEZONE (PREF_TIMEZONE_ID) references TIME_ZONES(ID),
foreign key USER_OWNS_USAGE (USAGE_OWNER_ID) references USAGE_OWNERS(ID)
);
しかし、JPAクラスでは表現したくない既存のSQLテーブルへのFKがあります。最善の解決策は、次の操作を行うために、次のようになります。
@OneToOne(cascade = CascadeType.MERGE, fetch = FetchType.LAZY)
@JoinColumn(nullable = false, name = "USAGE_OWNER_ID")
private Object usageOwners;
...基本的に任意のテーブルの参照を反映している可能性がダミー/ファントムオブジェクトを使用します。 JPAでは、元のObject型は使用できません。
それでは、どのよう私は&はJPAで任意のSQLテーブルを描いずにUSERSテーブルの外部キー制約を満たす描くことができます。私はちょうどは、実際のSQLテーブルではなく、それらのテーブルへのFK参照を描きたがっています。