Pagehelper使用

  • 依赖

		
            com.github.pagehelper
            pagehelper-spring-boot-starter
            1.2.3
        
  • 自定义page对象,未序列化。
public class Page {
    private Integer page;//当前页
    private Long count;//总数据量
    private List list;//总数据量
  • 业务代码–其中将domain对象转成dto,并重新封装进Page对象,响应给接口调用方
 PageHelper.startPage(param.getPage(), param.getPageSize());//接受参数,步骤1
		  TargetNetWorthLog net = new TargetNetWorthLog();
		  net.setTargetId(param.getTargetId());
		  BeanUtils.copyProperties(param, net);
		  
		  List list = netWorthLogDao.find(net);//查数据库,步骤2
		  PageInfo info = new  PageInfo<>(list);//步骤3
		  //——————下面不重要,转dto等————————
		  logger.info("分页查找,第{}页有{}条数据",param.getPage(),list.size());
		  if(list.isEmpty()) {
			  logger.info("查不到数据,产品编号");
			  info.setTotal(0);
			  return null;
		  }
		
		  List dtos = new ArrayList<>();
		  for (TargetNetWorthLog worth : list) {
			  TargetNetWorthDto dto = new TargetNetWorthDto();
			  BeanUtils.copyProperties(worth,dto);
			  dto.setLastUpdate(worth.getCreatedAt());
			  dtos.add(dto);
		  }
		  
		  Page page = new Page<>();//重新封装数据
		  page.setCount(info.getTotal());
		  page.setPage(info.getPageNum());
		  page.setList(dtos);
	     logger.info("={}",JsonUtil.toJson(page));
	     return page;

你可能感兴趣的:(plugins)