我有hibernate实体,比如A,它有另一个实体的列表,比如用oneToMany注释标记的列表列表。当我在a上调用getList()时,它从数据库中获取所有记录,但我想获取固定大小的页面形式,就像我们可以对查询(setFirstResult() and setFetchSize())所做的那样。如何为关联的对象实现这一点?
我目前正在开发一个与Hibernate (HQL)一起工作的产品,以及另一个与JPQL一起工作的产品。虽然我非常喜欢从关系结构(数据库)到对象(Java类)的映射概念,但我并不相信性能。使用Hibernate或JPQL,您将检索作为对象的人。HQLFROM my.package.Person as p我不仅将检索我不需要的人的其他属性,还将检索
我试图提高我的HQL查询的性能,但我很困惑。我在调整器、ZipCode和EagleUsers对象上的ZipCode关联都标记为FetchType.LAZY,但是当我使用这个查询时,它们会立即从数据库中被提取出来。SQL输出:
Hibernate: select top 1 adjuster0_.AdjusterId as Adjuster1_2_0_, zipcode1_.ZipId as ZipId1_163Hibernate: select adjusterco0_
首先,我将使用hibernate从数据库中获取一个游戏对象列表。List<Game> games = (List<Game>) session.createQuery("from Game where status=2").list();long id = games.get(0).getLocation().getId();