【问题标题】:JPA Multiple Queries on join加入时的 JPA 多个查询
【发布时间】:2011-12-22 01:11:51
【问题描述】:

在这个特定场景中,假设我有几个表 {A,B} 及其生成的 JPA 类。表 A -> 表 B 的 X 列存在 FK 关系,表 A 中的 X 列已用

注释
@OneToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "X", referencedColumnName = "X", insertable = false, updatable = false). 

我有一个命名的 JPA 查询,它正在连接此列“X”上的两个表。在执行时,我得到了正确的结果,但是正在对数据库运行多个查询。在 连接的每个数据匹配,似乎正在生成一个查询并针对数据库运行。这使我们的数据库负担过重。据我了解,在 LAZY 提取中,JPA 不应该只执行一次主查询并带回整个结果集,而不是为连接的数据匹配生成额外的子查询

【问题讨论】:

    标签: java jpa


    【解决方案1】:

    您不必执行连接查询来获取数据。如果指定OneToOne,Hibernate 会关联这两个对象。 LAZY 表示获取链接对象的请求只会在您需要该对象时启动。

    【讨论】:

      猜你喜欢
      • 2015-05-30
      • 1970-01-01
      • 2011-10-16
      • 2016-01-29
      • 2013-08-06
      • 1970-01-01
      • 1970-01-01
      • 2015-12-07
      • 2017-11-16
      相关资源
      最近更新 更多