SSM利用pageHelper实现分页

给大家分享一个简单实用的分页处理

一、需要pageHelper的包


	com.github.pagehelper
	pagehelper
	4.0.0

注意版本不能小于4.0.0

二、配置SqlMapConfig.xml


	
		
			
        	
		
	 

三、serviceImpl

public PageResult selectAll(int page,int pageSize) {
        // TODO Auto-generated method stub
        // TODO Auto-generated method stub
        PageHelper.startPage(page, pageSize);
        List list=noticeMapper.selectAll();
        
        PageResult pageResult=new PageResult();
        pageResult.setRows(list);
        //计算总条数
        PageInfo pageInfo=new PageInfo(list);
        Long total=pageInfo.getTotal();
        //计算总页数
        Long countPage;
        if(total%pageSize==0){
            countPage=total/pageSize;
        }else{
            countPage=total/pageSize+1;
        }
        pageResult.setCountPage(countPage);
        
        return pageResult;
    }

这个返回的结果类自己创建一下就行了,主要是

private Long countPage;
	//任意类型
	private List rows;
	
	public Long getCountPage() {
		return countPage;
	}

四、controller

把数据传到页面

@GetMapping("/toNotices")
	public String toNotices(@RequestParam(defaultValue="1") int page,Model model){
		PageResult pageResult=noticeService.selectAll(page, 10);
		model.addAttribute("notices", pageResult.getRows());
		model.addAttribute("countPage", pageResult.getCountPage());
		model.addAttribute("page", page);
		return "view/notices";
	}

五、jsp

 
总页数:${countPage}  |  当前页:${page}  |  首页  |  上一页 上一页  |  下一页 下一页  |  末页
好了就这些,欢迎大神指正批评


你可能感兴趣的:(工具类)