junsuck 2012-10-20 12:02
浏览 570
已采纳

Hibernate查询返回List<Object[]>的问题

Criteria criteria = session.createCriteria(EntityA.class);
int totalCount = ((Long) criteria.setProjection(Projections.rowCount()).uniqueResult()).intValue();
criteria.setProjection(null);
List results = criteria.setFirstResult(params.getStartIndex()).setMaxResults(params.getPageSize()).list();

 EntityA中有ManyToOne,如下:
@ManyToOne(fetch = FetchType.EAGER)
@Fetch(FetchMode.JOIN)
@JoinColumn(name = "COLUMN1")

private EntityB entityB;

 

发现通过hibernate的list()方法得到的List实际是:List<Object[]>,而不是List<EntityA>。

List<Objec[]>中的Object[0]是entityB,Object[1]是entityA。

 

请教各位高手如果返回的是List<EntityA>啊?

  • 写回答

1条回答 默认 最新

  • jinnianshilongnian 2012-10-20 12:08
    关注

    试试
    setResultTransformer(Criteria.ROOT_ENTITY) //或ROOT_ALIAS

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?