论坛首页 Java企业应用论坛

关于HIBERNATE的查询类的问题,请看看,有没有办法!?

浏览 3951 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-01-10  
提问:
用Criteria 查询很方便,但是我遇到一个问题,如下:
                Criteria cri = session.createCriteria(class.class);
                Criteria dCri = cri.createCriteria("class1", "class1")
                        .setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP);
                if (!("".equals(searchData.getCreator().trim()))) {
                    cri.createAlias("creator", "creator").add(
                            Expression.eq("creator.name", searchData.getCreato()));
                }
                  .......有很多查询条件.......
                int size = cri.list().size();
         在这里我要通过LIST才能知道查了多少条数据?
          有没有方法不通过LIST就能得到查的结果有多少条数据?
          本来用改成SQL语句,可由于查询的条件和类的层次很多?

请看看啊!!!
先谢谢了 !!
   发表时间:2007-01-10  
以前版本不清楚了,3.2可以用Projections啊,
http://www.hibernate.org/hib_docs/v3/reference/en/html_single/#querycriteria-projection
0 请登录后投票
   发表时间:2007-01-10  
agile_boy 写道


以前用hql:select count(*)来写个单查总数的句子。。
0 请登录后投票
   发表时间:2007-01-11  
模型复杂,类层次很多,复杂的查询,建议使用sql,可参考下ibatis
take it easy
0 请登录后投票
   发表时间:2007-01-11  
抛出异常的爱 写道
agile_boy 写道


以前用hql:select count(*)来写个单查总数的句子。。

如果用select count,需要自己去拼hql的字符串吧,不过criteria也是一种变相的拼
0 请登录后投票
   发表时间:2007-01-11  
谢谢大家的回帖,还有其他的办法吗?
0 请登录后投票
   发表时间:2007-01-11  
zqjshiyingxiong 写道
谢谢大家的回帖,还有其他的办法吗?

我一直建议不把总数当作一个必要关键项。。。
想要查时再查
大多数过W的数据库
操作者对10W与100W没什么概念

特别是列表时。。。没有必要就不要给他们查总条数了。。。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics