SpringBoot使用pageHelper插件

pom.xml

 <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.1.4</version>
        </dependency>

        <!--pagehelper分页插件-->
        <dependency>
            <groupId>com.github.pagehelper</groupId>
            <artifactId>pagehelper-spring-boot-starter</artifactId>
            <version>1.2.12</version>
        </dependency>

entity

package com.hxut.mrs.entity;

import java.util.Date;

import java.io.Serializable;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;



@Data
@AllArgsConstructor
@NoArgsConstructor
public class User implements Serializable{
    private static final long serialVersionUID = 644069498634347423L;
    //id
    private Integer id;
    //用户名
    private String username;
    //密码
    private String password;
    //昵称
    private String nickname;
    //邮箱
    private String email;
    //电话
    private String phone;
    //地址
    private String address;
    //创建时间
    private Date createTime;
    //头像
    private String avatarUrl;
    //角色
    private String role;

}

mapper

package com.hxut.mrs.mapper;

import com.hxut.mrs.entity.User;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

import java.util.List;

@Mapper
public interface UserMapper {
    @Select("select * from sys_user")
    List<User>  getAll();
}

service

service接口

package com.hxut.mrs.service;

import com.hxut.mrs.entity.User;

import java.util.List;

/**
 * description: UserService
 * date: 2022/9/15 19:16
 * author: MR.孙
 */
public interface UserService {
    List<User> getAllUsers(Integer pageNum, Integer pageSize);
}

service实现类

package com.hxut.mrs.service.Impl;

import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.hxut.mrs.entity.User;
import com.hxut.mrs.mapper.UserMapper;
import com.hxut.mrs.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * description: UserServiceImpl
 * date: 2022/9/15 19:17
 * author: MR.孙
 */
@Service
public class UserServiceImpl implements UserService {

    @Autowired
    private UserMapper userMapper;

    @Override
    public List<User> getAllUsers(Integer pageNum, Integer pageSize) {
        //使用pagehelper
        PageHelper.startPage(pageNum, pageSize);
        //查询要分页的数据
        List<User> users = userMapper.getAll();

        //把要分页的数据放到pageInfo中
        PageInfo<User> pageInfo = new PageInfo<>(users);

        return pageInfo.getList();
    }
}

controller

package com.hxut.mrs.controller;

import com.hxut.mrs.entity.User;
import com.hxut.mrs.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

/**
 * description: UserController
 * date: 2022/9/15 19:24
 * author: MR.孙
 */
@RestController
@RequestMapping("/user")
public class UserController {

    @Autowired
    private UserService userService;

    @GetMapping("/all")
    public List<User> getAllUsers(Integer pageNum, Integer pageSize){
        return userService.getAllUsers(pageNum, pageSize);
    }

}

测试分页效果

image

posted @ 2022-09-15 19:33  长情c  阅读(87)  评论(0)    收藏  举报