Hibernate @OneToOne关系 - 防止急切加载

时间:2017-05-27 11:28:22

标签: java hibernate jpa spring-data

以下是防止急切加载@OneToOne关系的各种方法

  1. 按照here所述使用@MapsId - 试过这个但没有工作
  2. 伪造一个@ One-Many关系,但这可能会导致复杂的JPQL查询出现问题。
  3. @OneToOne(fetch = FetchType.LAZY,optional = false) - 我没有非可空项目
  4. 构建时间字节代码检测 - 同样,我不具有不可为空的一对一关系,因此在我的情况下也不会起作用。
  5. 因此,我认为在我的情况下只有option1和option2是合适的。我知道这个主题已经像here in this excellent discussion那样进行了讨论。但这些答案差不多是5 - 8年前,并且想知道现在是否有新的方法。

    我有以下具体问题

    1. @MapsId无法运作的情况是什么?
    2. 上面的选项2中提到的伪造@ One-Many关系还有其他问题吗
    3. Hibernate的新版本中是否有新的选择?

0 个答案:

没有答案