我有这3张桌子(它是一个古老的结构,我无法改变它)
Table1 Table2 Table3
ID (PK) ID (PK) Tab3Nr (PK)
Version(PK) Version(PK) some data
some data Type(PK)
Tab3Nr
现在我想从Table1生成具有Table3属性的jpa实体。
问题是,对于表1,可以有多种类型的Table2。
该类型在任何其他表中都没有定义。它必须从程序逻辑中设置
我已经尝试了
@OneToOne
@JoinTable(name = "table2", joinColumns = { @JoinColumn(name = "id"),
@JoinColumn(name = "version") }, inverseJoinColumns = { @JoinColumn(name = "tab3Nr") })
private Table3 tab3;
它给了我表3的元素,但我无法指定哪一个。 如果表2中有2个元素(类型1和2),我会得到一个随机的?元素"表3"
任何想法?