休止状態は、JoinTable(List <>)で複合主キーを宣言します
HQL(Hibernateクエリ言語)を使用してサイドテーブルで複合主キーを宣言するにはどうすればよいですか?以前、クラスで1つの結合可能宣言を取得しましたが、すべてが正常に機能し、2つの列の複合主キーが作成されました。これは私が使用したコードです:
変更前(作業済み)
@Id
@SequenceGenerator(name="someSequence", sequenceName="SEQ_APP", allocationSize =1)
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="appSequence")
@Column(name="id")
private int setting_id;
@OneToOne
private User user;
@ManyToMany
@JoinTable(
name="tbl_settings_objectproxy",
joinColumns = @JoinColumn(name = "id"),
inverseJoinColumns = @JoinColumn( name = "objectproxy_id")
)
private Set<SomeObject> objectproxy;
今、私はすべてを精査し、セットをリストに変更し、別のサイドテーブルを追加しました。これで、hibernateは想定どおりに2つのサイドテーブルを作成しますが、主キーを宣言しません...これを修正する方法を知っている人はいますか?これは私の新しいコードです:
AFTER(複合主キーは作成されなくなり、主キーも宣言されなくなります)
@Id
@SequenceGenerator(name="someSequence", sequenceName="SEQ_APP", allocationSize =1)
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="appSequence")
@Column(name="id")
private int setting_id;
@OneToOne
private User user;
@ManyToMany
@JoinTable(
name="tbl_settings_objectproxy",
joinColumns = @JoinColumn(name = "id"),
inverseJoinColumns = @JoinColumn( name = "objectproxy_id")
)
private List<SomeObject> objectProxyForSomething;