六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 909|回复: 0

springside学习中遇到的问题

[复制链接]

升级  11.33%

15

主题

15

主题

15

主题

秀才

Rank: 2

积分
67
 楼主| 发表于 2013-1-30 02:11:26 | 显示全部楼层 |阅读模式
本想发在新手版上,又怕没人回答,麻烦指点后再帮我投新手贴,谢谢。
学习springside时候遇到个问题,问题如下:
HibernateGenericDao中
/** * 分页查询函数,使用hql. * * @param pageNo 页号,从0开始. */ public Page pagedQuery(String hql, int pageNo, int pageSize, Object... values) { Assert.hasText(hql); //Count查询 String countQueryString = " select count (*) " + removeSelect(removeOrders(hql)); List countlist = getHibernateTemplate().find(countQueryString, values); long totalCount = (Long) countlist.get(0);if (totalCount < 1) return new Page(); //实际查询返回分页对象 int startIndex = Page.getStartOfPage(pageNo, pageSize); Query query = getQuery(hql, values); List list = query.setFirstResult(startIndex).setMaxResults(pageSize).list();return new Page(startIndex, totalCount, pageSize, list); }
中为什么这句
String countQueryString = " select count (*) " + removeSelect(removeOrders(hql));

需要先removeSelect?我们的sql不是可以这样的吗

select count (*) from (select ...)


后记:hibernate的设计原理还没看透,没有好好学习一下hibernate的官方文档(学习要塌实 ),不过到现在还没有兄弟秀一个好的解决方法出来哦
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表