【问题标题】:@OneToMany mapping for Collection in hibernate@OneToMany 映射休眠中的集合
【发布时间】:2018-10-12 20:23:20
【问题描述】:

每当我们有@OneToMany 关系的双向映射时,我们就会在父实体中使用一个集合来收集所有子实体。但是,出于性能考虑,始终建议使用较少数量的子实体。据说在孩子中有@ManyToOne 单向映射,如果我们需要与父母关联的孩子,则使用查询。这是什么原因?

【问题讨论】:

    标签: java hibernate orm persistence


    【解决方案1】:

    我不确定你在哪里读到的。没有一般规则。

    但是考虑一下:

    1. 如果您认为它是如何映射到表的,则子表将具有指向父表的外键。在 rdbms 方面,父级中不会有显式的“集合”,它是由外键隐含的。所以ManyToOne倾向于反映实现。

    2. 如果您映射一对多,这意味着您在父级中有一个集合。如果它有很多孩子,它可能会占用很多内存。

    3. 在许多情况下,检索父项时不需要子项。 (这当然也可以使用惰性集合来解决。)

    4. 如果父级有一个集合,则在检索子级时您需要执行查询,据说您应该执行以检索子级。

    也许这可以帮助您在一定程度上澄清假定的建议。

    【讨论】:

    • 这不是我要寻找的。​​span>
    猜你喜欢
    • 2013-01-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-16
    • 2012-03-22
    • 2017-03-21
    • 1970-01-01
    相关资源
    最近更新 更多