【问题标题】:Hibernate Criteria with projection is not picking data带有投影的休眠标准不选择数据
【发布时间】:2017-05-25 15:36:25
【问题描述】:

我正在使用 Hibernate 标准和投影来获得不同的值,如下所示:

Criteria criteria = this.getSession().createCriteria(CmError.class);

ProjectionList projList = Projections.projectionList();
projList.add(Projections.property("router"));
projList.add(Projections.property("slot"));
criteria.setProjection(Projections.distinct(projList));

我正在使用带有 Projection 的结果转换器来获取不同值的列表

List<CmError> cm =  criteria.setResultTransformer(Transformers.aliasToBean(CmError.class)).list();

我看到的是列表的所有字段值为空,而列表的大小是正确的,这意味着我期望从相同的不同 SQL 查询返回的记录数与 CmError 列表的大小相同,但数据当我遍历列表时,内部列表没有填充并返回 null。

不知道我错过了什么。

【问题讨论】:

    标签: java hibernate hibernate-criteria


    【解决方案1】:

    尝试将其更改为:

    projList.add(Projections.property("router"), "router");
    projList.add(Projections.property("slot"), "slot");
    

    【讨论】:

    • 感谢 Alex 的修复。
    猜你喜欢
    • 2011-04-11
    • 2015-07-17
    • 2011-11-27
    • 2012-09-06
    • 1970-01-01
    • 2011-10-04
    • 2017-12-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多