springMVC Mybatis实现分页查询

首先在对应的Mapper.xml中配置:




对应的Mapper中配置:

@Mapper//说明这是个一个mapper
public interface DiaryMapper {
    public int insertDiary(Diary diary) throws Exception;

    public List selectShare();

    public int findTotal();

    public List pageShare(int startRow);
}

DAO层调用Mapper查询:

//获得记录总数
    public int findTotal(){
        DiaryMapper diaryMapper = sqlSession.getMapper(DiaryMapper.class);
        int total = diaryMapper.findTotal();
        return total;
    }

    //分页查询
    public List pageShare(int startRow){
        List list = new ArrayList<>();
        DiaryMapper diaryMapper = sqlSession.getMapper(DiaryMapper.class);
        list = diaryMapper.pageShare(startRow);
        return list;
    }

Service层调用DAO层,省略。

Controller层:

@RequestMapping(value = "/seeShare", method = RequestMethod.GET)
    public String seeshare(Model model, HttpServletRequest request) {
        HttpSession session = request.getSession();
        List pageList = new LinkedList();
        //初始显示第一页
        pageList = userService.pageShare(0);
        model.addAttribute("pageList", pageList);
        int total = userService.findTotal();//总记录数
        int pageTotal = total % 10 == 0 ? total / 10 : total / 10 + 1;//根据总记录数算出总页数
        int pageArray[] = new int[pageTotal];//页数数组,供前端遍历
        for (int i = 1; i <= pageTotal; i++) {
            pageArray[i-1] = i;
        }
        session.setAttribute("pageArray",pageArray);
        return "/share/seeShare.html";
    }

    @RequestMapping(value = "/pageController",method = RequestMethod.GET)
    public String pageController(Model model, HttpServletRequest request){
        String pageNum = request.getParameter("pageNum");//要查询的页数
        List pageList = new ArrayList<>();
        int startRow = (Integer.parseInt(pageNum) - 1) * 10;//当前页开始的行数
        pageList = userService.pageShare(startRow);
        model.addAttribute("pageList", pageList);
        System.out.println(pageList.toString());
        return "/share/seeShare.html";
    }

前端HTML代码:

标题 内容 发表时间 发表用户 操作

界面显示结果:

springMVC Mybatis实现分页查询_第1张图片

你可能感兴趣的:(java,web,springMVC,mybatis)