hibernate投影唯一列表

时间:2014-11-04 16:33:21

标签: java hibernate criteria

我试图使用休眠和投影来生成一个没有重复元素的列表。

我有一个CurrEntityProfileBO类,它有属性entityId。

        Criteria criteria = session.createCriteria(
                CurrEntityProfileBO.class, "entityProfileBO");
        criteria.setProjection(Projections.distinct(Projections
    .projectionList().add(Projections.property("entityId"))));

我得到了一个例外:

[2014-11-04 11:28:59] ERROR [http-8080-5]      (SqlExceptionHelper.java:144) - ORA-01791: not a SELECTed expression

[2014-11-04 11:28:59]  WARN [http-8080-5] (AbstractHandlerExceptionResolver.java:185) - Handler execution resulted in exception
org.hibernate.exception.SQLGrammarException: ORA-01791: not a SELECTed expression

at     org.hibernate.exception.internal.SQLExceptionTypeDelegate.convert(SQLExceptionTypeDelegate.java:82)

感谢任何帮助!

1 个答案:

答案 0 :(得分:0)

根据sp00m。 criteria.setResultTransformer(CriteriaSpecification.DISTINCT_ROOT_ENTITY); 效果很好!