1007-SpringBoot 整合 mybatis-pagehelper

SpringBoot 整合 mybatis-pagehelper

1.引入分頁插件依賴

com.github.pagehelper pagehelper-spring-boot-starter 1.2.12

2.配置yml

分頁插件配置

pagehelper:
helperDialect: mysql
supportMethodsArguments: true

3.使用分頁插件,在查詢前使用分頁插件,原理:統一攔截sql,爲其提供分頁功能

/**

  • page: 第幾頁
  • pageSize: 每頁顯示條數
    */
    PageHelper.startPage(page, pageSize);

4.分頁數據封裝到PagedGridResult.java傳給前端

    @Transactional(propagation = Propagation.SUPPORTS)
    @Override
    public PagedGridResult queryPagedComments(String itemId,
                                              Integer level,
                                              Integer page,
                                              Integer pageSize) {
        Map<String,Object> map = new HashMap<>();
        map.put("itemId",itemId);
        map.put("level",level);
        //mabatis-pagehelper--在查詢之前使用分頁:第幾頁、每頁幾條
        PageHelper.startPage(page,pageSize);

        List<ItemCommentVo> list = itemsMapperCustom.queryItemComments(map);

        for(ItemCommentVo vo : list){
            vo.setNickname(DesensitizationUtil.commonDisplay(vo.getNickname()));
        }
        return setterPagedGrid(list,page);
    }
    private PagedGridResult setterPagedGrid(List<?> list, Integer page) {
        PageInfo<?> pageList = new PageInfo<>(list);
        PagedGridResult grid = new PagedGridResult();
        grid.setPage(page);
        grid.setRows(list);
        grid.setTotal(pageList.getPages());
        grid.setRecords(pageList.getTotal());
        return grid;
    }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章