班级A
与B
有一对多的关系。因此,A
具有属性collectionOfB
。
我有没有办法将“计数B”映射到A
中的单个属性?
目的是提供一种快捷方式来检索关联的B
的数量而不加载整个集合。有时我只需要计数即收集大小。我知道我可以针对实体管理器发出一个查询。但是,由于注释,由JPA提供商完成它当然是更可取的。
答案 0 :(得分:3)
我能够使用Hibernate的超级映射来解决我的问题:http://www.frightanic.com/2010/11/21/extra-lazy-one-to-many-mapping-with-hibernate/
答案 1 :(得分:0)
据我所知,这是不可能的。 正如您已经建议的那样,运行一个查询来实现这一目标,除非您拥有数十万个B对象,并且仍然可以缓存它并且每次只更新x分钟,否则这不应该是昂贵的。
更容易出错的解决方案是让统计实体拥有这些数字。
答案 2 :(得分:0)