【SpringBoot 项目】整合MyBatis 分页插件 PageHelper

只需两步即可

步骤一

pom.xml 导入所需依赖

		
        <dependency>
            <groupId>com.github.pagehelpergroupId>
            <artifactId>pagehelper-spring-boot-starterartifactId>
            <version>1.2.5version>
        dependency>
        
        
        <dependency>
            <groupId>org.mybatis.spring.bootgroupId>
            <artifactId>mybatis-spring-boot-starterartifactId>
            <version>2.1.3version>
        dependency>

步骤二

创建PageHelper的配置类

@Configuration
public class PageHelper {

    @Bean
    public PageHelper createPageHelper() {
        return new PageHelper();
    }
    
}

使用小案例

UserController.java

@RestController
public class UserController {

    @Resource
    UserService userService;
    
    /***
     * 获取数据库中 User表中的数据 【并分页处理】 
     * @param condition
     * @return
     */
    @GetMapping("/getUser")
    public Map<String, Object> index(@RequestParam Map condition) {

        // System.out.println(condition);
        int startPage = 0;
        int pageSize = 0;


        try {

            // 接受前端传过来的,起始页,每页记录数这两个参数,将其转换为整数
            startPage = Integer.parseInt((String) condition.get("startPage"));
            pageSize = Integer.parseInt((String) condition.get("pageSize"));

            //  创建Page对象,将page,limit参数传入,必须位于从数据库查询数据的语句之前,否则不生效
            Page page = PageHelper.startPage(startPage, pageSize);

            //  ASC是根据id 正向排序,DESC是反向排序
            PageHelper.orderBy("id ASC");

            // 从数据库查询,这里返回的的allUser是已经分页好的数据
            List<User> allUser = userService.getAllUser();

            // 获取查询记录总数,必须位于从数据库查询数据的语句之后,否则不生效
            long total = page.getTotal();

            HashMap<String, Object> map = new HashMap<>();
            map.put("error_code", 0);
            map.put("error_msg", "请求成功");
            map.put("data", allUser);
            map.put("count", total);

            return map;

        } catch (Exception e) {

            // 打印异常
            e.printStackTrace();

            

            // 出现异常 --->  返回 “错误码 以及 错误信息”
            HashMap<String, Object> map = new HashMap<>();
            
            map.put("error_code", "1");
            map.put("error_msg", "请正确传递参数");

            return map;
        }

    }

}

效果 :

【SpringBoot 项目】整合MyBatis 分页插件 PageHelper_第1张图片

参考 : https://www.jianshu.com/p/458541192159

你可能感兴趣的:(SpringBoot,mybatis,pageHelper,springboot)