Hibernate单向一对多具有多个约束

时间:2017-01-13 22:58:04

标签: java sql hibernate one-to-many

假设我有一些通用表appleorange等和表note,其中包含有关我的通用表中某行的注释。通过保存entity_type(例如表格名称)和entity_id(例如行的ID)来存储备注。

我正在尝试从applenote进行单向一对多映射。有效地建立这种关系:

SELECT * 
FROM apple f 
INNER JOIN note n 
ON f.id = n.entity_id
AND n.entity_type = 'apple'

我一直在尝试这样的事情:

@Entity
public class Apple {

    ...

    @OneToMany
    @JoinColumn(name = "entity_id", referencedColumnName = "id")
    @WhereJoinTable(clause = "entity_type = 'apple'")
    private Set<Note> changeNotes = new HashSet<>();

哪个无效(错误为@WhereJoinTable on an association without join table)。有任何想法吗?

更新: 我认为这是我试图做的事情https://docs.oracle.com/html/E13946_02/ref_guide_mapping_notes_nonstdjoins.html 然而,hibernate正在寻找一个列,而不仅仅是使用字符串......

0 个答案:

没有答案