springboot整合pagehelper实现分页

Posted 疯子加天才

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springboot整合pagehelper实现分页相关的知识,希望对你有一定的参考价值。

 

在pom.xml中添加依赖包

		<dependency>
			<groupId>com.github.pagehelper</groupId>
			<artifactId>pagehelper-spring-boot-starter</artifactId>
			<version>1.2.13</version>
		</dependency>

创建mapper

package com.jeff.mapper;

import java.util.List;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import com.github.pagehelper.Page;
import com.jeff.entity.User;

@Mapper
public interface UserMapper {
	
	@Select("select * from sys_user where id=#{id}")
    User getUserById(@Param("id") Long id);

	@Select("select * from sys_user")
	List<User> getUserList();

	@Select("select * from sys_user")
	Page<User> getUserList2();

}

创建service

package com.jeff.service;

import java.util.List;

import com.github.pagehelper.Page;
import com.jeff.entity.User;

public interface UserService {

	User getUserById(Long id);

	List<User> getUserList1();

	Page<User> getUserList2();

}

创建serviceImpl

package com.jeff.service.impl;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.github.pagehelper.Page;
import com.jeff.entity.User;
import com.jeff.mapper.UserMapper;
import com.jeff.service.UserService;

@Service
public class UserServiceImpl implements UserService {
	
	@Autowired
	private UserMapper mapper;

	@Override
	public User getUserById(Long id) {
		
		return mapper.getUserById(id);
	}

	@Override
	public List<User> getUserList1() {
		
		return mapper.getUserList();
	}

	@Override
	public Page<User> getUserList2() {
		
		return mapper.getUserList2();
	}

}

创建controller

package com.jeff.controller;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.jeff.entity.User;
import com.jeff.entity.request.PageEntity;
import com.jeff.service.UserService;

@RestController
@RequestMapping("user")
public class UserController {

	@Autowired
	private UserService service;

	@RequestMapping("getUserById")
	public User getUserById(Long id) {

		return service.getUserById(id);
	}

	/**
	 * 
	 * @description: 分页查询方法一
	 * @author: Jeff
	 * @date: 2020年3月14日
	 * @param page
	 * @return
	 */
	@RequestMapping("getUserList1")
	public Object getUserList1(PageEntity page) {
		PageHelper.startPage(page.getPage(), page.getRows());
		List<User> list = service.getUserList1();
		PageInfo<User> pageInfo = new PageInfo<>(list);
		return pageInfo;
	}

	/**
	 * 
	 * @description: 分页查询方法二
	 * @author: Jeff
	 * @date: 2020年3月14日
	 * @param page
	 * @return
	 */
	@RequestMapping("getUserList2")
	public Object getUserList2(PageEntity page) {
		PageHelper.startPage(page.getPage(), page.getRows());
		Page<User> list = service.getUserList2();
		return list;
	}

}

以上是关于springboot整合pagehelper实现分页的主要内容,如果未能解决你的问题,请参考以下文章

SpringBoot整合PageHelper实现分页查询

SpringBoot整合mybatis使用pageHelper插件进行分页操作

springboot整合分页插件PageHelper

SpringBoot与PageHelper的整合示例详解

springboot整合分页插件PageHelper

Spring Boot系列SpringBoot整合PageHelper分页组件以及前端js分页插件