我有一个具有ID CaseId的实体Case(不幸的是,由于与旧系统的兼容性,它是一个字符串)。此id是表Document中的外键,每个Case可以有许多文档(全名)。我在Case实体中添加了以下内容:
@Id
@Column(name = "CaseId", length = 20, nullable = false)
private String caseId;
@OneToMany(fetch=FetchType.EAGER)
@JoinColumns ( {
@JoinColumn(name="caseId", referencedColumnName="CaseId")
} )
private Set<Document> documents;
文档表包含“ CaseId varchar(20)不为null”。现在,在数据库中,所有案例都有六个文档。但是,当我执行myCase.documents()。size时,我只会得到一个文档。我应该怎么做才能获得所有文件?
干杯
尼克
最佳答案
映射看起来正确。但是有趣的是:Document
实体(及其equals
/ hashCode
)
执行的SQL(请参阅this previous answer以激活SQL日志记录)
关于java - hibernate :在实体映射中获取一组对象,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3724683/