它是否可能是int而不是List

时间:2014-02-11 09:35:56

标签: java hibernate

我想要一个特定表的记录数,但我的查询返回列表我希望整数作为结果 我的代码在这里

public int<BorrowerEvaluationDTO> findEvaluations(final String sector, final String investorId) {
    return (List<BorrowerEvaluationDTO>) getHibernateTemplate().executeFind(
            new HibernateCallback() {
                public Object doInHibernate(Session session) throws HibernateException,
                        SQLException {
                    Criteria criteria = session.createCriteria(BorrowerEvaluationDTO.class);
                    criteria.add(Expression.eq("hasEvaluation", true));
                    //      criteria.setProjection(Projections.distinct(Projections.property("stateOrProvinceId")));
                    //      criteria.setProjection(Projections.distinct(Projections.property("partnerOrganisation")));
                    if (sector != null && !sector.trim().equals("")) {
                        criteria.add(Expression.eq("sector", sector));
                    }
                    criteria.setProjection(Projections.rowCount());
                    if (investorId != null && !investorId.trim().equals("")) {


                    }




                    return criteria.list().size();
                }

                ;
            });
}

1 个答案:

答案 0 :(得分:3)

您已声明错误的退货类型 只需尝试更改您的函数即可返回int并将返回值返回criteria.list().size();

修改

您可以编写自己的功能。只需将criteria设为全局。 例如:

public int getListSize()
{
    return criteria.list().size();
}