代码之家  ›  专栏  ›  技术社区  ›  Marcel Stör

JPA:使用count直接将集合大小映射到属性?

  •  4
  • Marcel Stör  · 技术社区  · 15 年前

    等级 A 有一对多的关系 B . 因此, 一个 有一个属性 collectionOfB .

    有没有办法把“count B”映射到 一个 ?

    其目的是提供一个快捷方式来检索关联的 不加载整个集合。有时我需要的只是计数,即收集的大小。我知道我可以对正是这样做的实体管理器发出一个查询。不过,看到JPA提供者通过注释来完成它当然是更好的选择。

    3 回复  |  直到 13 年前
        1
  •  4
  •   Marcel Stör    15 年前

    我可以使用Hibernate的额外延迟映射来解决我的问题: http://www.frightanic.com/2010/11/21/extra-lazy-one-to-many-mapping-with-hibernate/

        2
  •  0
  •   SanG    15 年前

    据我所知,这是不可能的。 正如您已经建议的那样,运行一个查询来实现这一点,除非您有成百上千的B对象,并且您仍然可以缓存它,并且只在每x分钟更新一次,否则代价不高。

    更容易出错的解决方案是使用具有此类数字的stats实体。