代码之家  ›  专栏  ›  技术社区  ›  niklassaers

Hibernate:获取实体映射中的一组对象

  •  1
  • niklassaers  · 技术社区  · 14 年前

    我有一个实体Case,它有一个id CaseId(不幸的是,由于与遗留系统的兼容性,它是一个字符串)。此id是表文档中的外键,每个案例可以有多个文档(一个域)。我在我的案例实体中放了以下内容:

    @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)not null”。现在,在数据库里,所有的案子都有六份文件。但当我这么做的时候myCase.documents文件()。大小,我只得到一个文档。我该怎么办才能拿到所有的文件?

    干杯

    1 回复  |  直到 14 年前
        1
  •  2
  •   Community Egal    7 年前

    地图 对的。但有趣的是:

    • Document 实体(及其子实体) equals hashCode )
    • 执行的SQL(请参阅 this previous answer 激活SQL日志记录)