毕业论文开发语言企业开发JAVA技术.NET技术WEB开发Linux/Unix数据库技术Windows平台移动平台嵌入式论文范文英语论文
您现在的位置: 毕业论文 >> java技术 >> 正文

ssh的分页技术是怎么实现的

更新时间:2012-12-20:  来源:毕业论文

ssh的分页技术是怎么实现的
大家伙谁能给我具体的说说ssh的分页技术是怎么实现的,看得我好迷茫啊。
本来就对分页不是怎么懂。

ssh是三个框架,你想问的是哪个分页?
看看Hibernate的数据方言类的源代码
Session s=hibernateTemplate.getSessionFactory().getCurrentSession();
s.beginTransaction();
Query query=s.createQuery(hql);
query.setFirstResult(pagesize); //分页查询
query.setMaxResults(pagelength);
List<Install> installs=query.list();
s.getTransaction().commit();
MySession.getSession().put("pagenum",installs.size());

我这么做的  pagesize每页的第一条  pagelength为每页显示条数   页面中通过当前显示条数+1是否大于 pagelength来判断是否还有下一页,判断是否有上一页就判断下pagesize是否为0

继承HibernateDaoSupport类,
如:
public List<Object> findObjectList(final int page,final int pageSize){
List<Object> list=this.getHibernateTemplate().execute(new HibernateCallback(){
   public Object doInHibernate(Session session)
throws HibernateException, SQLException {
Criteria criteria=session.createCriteria(Object.class);
Criterion criterion=Restrictions.eq("role.roleId",id);
criteria.add(criterion);
criteria.setFirstResult((page-1)*pageSize);//设置每页显示的第一条记录
criteria.setMaxResults(pageSize);//设置每页显示的最大记录数
List list=criteria.list();
session.close();
return list;

});

}

         /**
 * 查询最大记录数
 *
 */
public int pageCount(){
String hql = "select count(*) from XXX";
List list = this.getHibernateTemplate().find(hql);
Number count = 0;
if (list != null && list.size() != 0) {
count = (Number) list.get(0);
}
return count.intValue();
}


        /**
 * 求出最大页面maxPage
 */
public int maxPage(Integer pageSize, Integer pageCount){
int maxPage = 0;
if (pageCount % pageSize == 0) {
maxPage = pageCount / pageSize;
} else {
maxPage = pageCount / pageSize + 1;
}
return maxPage;
}

设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优尔论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。