分页显示源码

来源:互联网 发布:linux内核延时函数 编辑:程序博客网 时间:2024/06/06 20:08

  分页显示源码

 

/**
     *  分页显示所有课程
     * 
     * 
@param pageinfo
     
*/

    
public HashMap getCourse(PageInfo pageinfo) throws Exception {

        HashMap hp 
= new HashMap();
        String hsql 
= "select c from Courses as c order by c.id";
        Query query 
= coursesDao.getQuery(hsql);
        
int totalCount = pageinfo.getTatalCount();
        
int totalPage = pageinfo.getTotalpage();
        
int start = pageinfo.getStart();
        totalCount 
= totalCount == -1 ? coursesDao.getTotalCount(hsql)
                : totalCount;
        totalPage 
= totalPage == -1 ? coursesDao.getTotalPage(totalCount,
                pageinfo.getPageSize()) : totalPage;

        query.setFirstResult(start);
        query.setMaxResults(pageinfo.getPageSize());
        List list 
= query.list();
        hp.put(
"courses", (Courses[]) list.toArray(new Courses[0]));
        hp.put(
"totalCount"new Integer(totalCount));
        hp.put(
"totalPage"new Integer(totalPage));
        
return hp;

    }

    
/**
     *  分页显示所有选课历史
     * 
@param pageinfo 
     * 
@param stu_name
     
*/

    
public HashMap getStudentHistory(PageInfo pageinfo, String stu_name)
            
throws Exception {
        HashMap hp 
= new HashMap();
        Students stu 
= this.getStudetFromName(stu_name);
        Integer stu_id 
= stu.getId();
        Criteria criteria 
= coursesDao.getCriteria(History.class);

        criteria.createCriteria(
"student").add(Expression.eq("name", stu_name));
        
int totalCount = pageinfo.getTatalCount();
        
int totalPage = pageinfo.getTotalpage();
        
int start = pageinfo.getStart();
        totalCount 
= totalCount == -1 ? criteria.list().size() : totalCount;
        totalPage 
= totalPage == -1 ? studentsDao.getTotalPage(totalCount,
        pageinfo.getPageSize()) : totalPage;
        criteria.setFirstResult(start);
        criteria.setMaxResults(pageinfo.getPageSize());
        criteria.addOrder(Order.asc(
"id"));
       
// criteria.addOrder(Order.desc("id"));
        List list = criteria.list();
        hp.put(
"history", (History[]) list.toArray(new History[0]));
        hp.put(
"totalCount"new Integer(totalCount));
        hp.put(
"totalPage"new Integer(totalPage));
        
return hp;
    }


 

原创粉丝点击