分页查询案例

分页查询
 
 
---CONTROLLER---
 
/**
* 分页查询所有成员。
* @param page
* @param request
* @return
*/

@RequestMapping("/allStaff.do")
public String getAllStaff(String page,HttpServletRequest request)
{
if(page ==null)
{
page = 1+"";
}

request.setAttribute("page", page);
request.setAttribute("pageNum",staffService.getPageNum());
request.setAttribute("staffList", staffService.allStaff(page));
return "/allStaff.do";


}


/**
* 分页查询下一页
* @param page
* @param request
* @return
*/
@RequestMapping("/nextPage.do")
public String nextPage(String page,HttpServletRequest request){
int curPage = Integer.parseInt(page);
request.setAttribute("page", curPage+1);
request.setAttribute("pageNum",staffService.getPageNum());
request.setAttribute("staffList", staffService.allStaff(curPage+1+""));
return "/allStaff.do";
}

/**
* 分页查询前一页
* @param page
* @param request
* @return
*/

@RequestMapping("/prevPage.do")
public String prevPage(String page,HttpServletRequest request){
int curPage = Integer.parseInt(page);
request.setAttribute("page", curPage-1);
request.setAttribute("pageNum",staffService.getPageNum());
request.setAttribute("staffList", staffService.allStaff(curPage-1+""));
return "/allStaff.do";
}

 

 
 
 
 
 
 
 
---Action---
 
/**
* 分页查询成员信息
* @param page
* @return
*/
public List<Staff> allStaff(String page);


/**
* 获得页码。
* @return
*/
public int getPageNum();




/**
* 分页查询成员信息
* @param page
* @return
*/
public List<Staff> allStaff(String page){

return staffDao.allStaff(page);
}






/**
* 获得页码。
* @return
*/
public int getPageNum(){
return staffDao.getPageNum();
}

 

 
----DAO---
 
public int getPageNum();
public List<Staff> allStaff(String page) ;



/**
* 得到员工页面总页码信息。
*/
public int getPageNum() 
{
String hql="from Staff";
Query query = sessionFactory.getCurrentSession().createQuery(hql);
int temp = query.list().size()/pageSize;//size=10
if(query.list().size()%pageSize !=0)
{
temp++;
}
return temp;
}



/**
* 分页获取所有员工,第一页的。
*/
public List<Staff> allStaff(String page) 
{
String hql="from Staff";
Query query = sessionFactory.getCurrentSession().createQuery(hql);
query.setFirstResult((Integer.parseInt(page)-1)*pageSize); 
query.setMaxResults(pageSize); 
return query.list();
}

 





posted @ 2015-08-15 01:00  唐予之  阅读(219)  评论(0编辑  收藏  举报