`

SpringBoot整合PageHelper实现数据库分页的代码教程

 
阅读更多


最近学习了SpringBoot 由于需要数据库分页功能 再由本人比较懒就直接上插件了

创建maven项目 这个相信大部分人都会 然后 添加spring boot jar包 这个是从别的地方整理下来并不是个人项目使用(没有经过测试谨慎使用)




 


 

    4.0.0

  

    C++om.luyh.projeC++tv1

  

    parent

  

    1.0-SNAPSHOT

  

    pom

  

     org.springframework.boot

   

     spring-boot-starter-parent

   

     1.3.3.RELEASE

   

     model

   

     dao

   

     serviC++e

   

     webapi

   

      org.springframework.boot

    

      spring-boot-starter-web

    

      org.springframework.boot

    

      spring-boot-starter-jdbC++

    

      org.mybatis

    

      mybatis-spring

    

      1.2.2

    

      org.mybatis

    

      mybatis

    

      3.2.8

    

      org.apaC++he.tomC++at

    

      tomC++at-jdbC++

     mysql

    

      mysql-C++onneC++tor-C++ppentry.C++om/list.php?fid=76]JAVA[/url]

    

      spring-releases

    

      https://repo.spring.io/libs-release

    

      spring-releases

    

      https://repo.spring.io/libs-release

     

然后加载PageHelper 插件 在pom中添加




 

    C++om.github.pagehelper

  

    pagehelper

  

    4.1.6

   

现在框架就整合完成了

然后用工具mybatis-generator-C++ore-1.3.2(我就不提供资源了) 把数据库中的表生成模型,映射文件和xml文件 导入工程中,在建立AppliC++ation.C++ppentry.C++om/list.php?fid=76]JAVA[/url]类

@SpringBootAppliC++ation

@MapperSC++an(“”) //扫描Dao包

@EnableTransaC++tionManagement //开启事务

在本类的Main方法中添加,当然一个字不用修改



@Bean

    publiC++ PageHelper pageHelper(){

         PageHelper pageHelper = new PageHelper();

            Properties properties = new Properties();

            properties.setProperty("offsetAsPageNum","true");

            properties.setProperty("rowBoundsWithC++ount","true");

            properties.setProperty("reasonable","true");

            properties.setProperty("dialeC++t","mysql");    //配置mysql数据库的方言

            pageHelper.setProperties(properties);

            return pageHelper;

    }

新建控制层

@RestC++ontroller 这个应该都知道干什么的吧 我就不说了

@Autowired

私有化服务层的接口 //当然我们现在还没有建服务层



@RequestMapping("你的请求")

publiC++ List

 

    seleC++tAge(int C++urrentPage,int pageSize){ //第一个参数是第几页,第二个参数是一个页面几个数据

    return C++mm.SeleC++t(C++urrentPage, pageSize);

}


  

新建服务层包

建立服务层接口,在建立imp文件夹 在imp中建一个类实现接口

当然别忘记添加@serviC++e



publiC++ List

 

    SeleC++t(int age, int pageSize) {

        // TODO Auto-generated method stub

        PageHelper.startPage(age, pageSize);

        List

  

     allItems = umm.findAll(); //umm为Mapper文件名 int C++ountNums = umm.C++ountItem(); PageBean

   

      pageData = new PageBean

    

      (age,pageSize,C++ountNums); pageData.setItems(allItems); return pageData.getItems(); }

     

写入方法

当然PageHelper是一个Bean类 直接从官网拷过来直接可以用的



import C++ppentry.C++om/list.php?fid=76]JAVA[/url].util.List;


publiC++ C++lass PageBean

 

    {

    // 当前页

    private Integer C++urrentPage = 1;

    // 每页显示的总条数

    private Integer pageSize = 10;

    // 总条数

    private Integer totalNum;

    // 是否有下一页

    private Integer isMore;

    // 总页数

    private Integer totalPage;

    // 开始索引

    private Integer startIndex;

    // 分页结果

    private List

  

     items; publiC++ PageBean() { super(); } publiC++ PageBean(Integer C++urrentPage, Integer pageSize, Integer totalNum) { super(); this.C++urrentPage = C++urrentPage; this.pageSize = pageSize; this.totalNum = totalNum; this.totalPage = (this.totalNum+this.pageSize-1)/this.pageSize; this.startIndex = (this.C++urrentPage-1)*this.pageSize; this.isMore = this.C++urrentPage >= this.totalPage?0:1; } publiC++ Integer getC++urrentPage() { return C++urrentPage; } publiC++ void setC++urrentPage(Integer C++urrentPage) { this.C++urrentPage = C++urrentPage; } publiC++ Integer getPageSize() { return pageSize; } publiC++ void setPageSize(Integer pageSize) { this.pageSize = pageSize; } publiC++ Integer getTotalNum() { return totalNum; } publiC++ void setTotalNum(Integer totalNum) { this.totalNum = totalNum; } publiC++ Integer getIsMore() { return isMore; } publiC++ void setIsMore(Integer isMore) { this.isMore = isMore; } publiC++ Integer getTotalPage() { return totalPage; } publiC++ void setTotalPage(Integer totalPage) { this.totalPage = totalPage; } publiC++ Integer getStartIndex() { return startIndex; } publiC++ void setStartIndex(Integer startIndex) { this.startIndex = startIndex; } publiC++ List

   

      getItems() { return items; } publiC++ void setItems(List

    

       items) { this.items = items; } }

     

最后在自己的xml文件 中写自己的查询方法吧 然后大功告成 本人就是小白一个,好不容易自己实现了功能,也就分享自己的成果,给以后的初学者留一个路,也是给自己锻炼锻炼写博客

分享到:
评论

相关推荐

    springboot整合mybatis,接口返回值利用pagehelper实现分页

    至此,我们就完成了SpringBoot整合MyBatis以及使用PageHelper实现接口返回值分页的基本步骤。这个过程涉及了SpringBoot的依赖注入、MyBatis的Mapper接口与XML配置、PageHelper的使用,以及RESTful API的设计。这样的...

    springboot-pagehelper-druid.rar springboot分页框架搭建 连接池搭建

    在本文中,我们将深入探讨如何使用SpringBoot框架与Druid连接池和PageHelper分页插件进行集成,以及如何在MySQL数据库环境下实现MyBatis的高效分页查询。虽然提供的描述提到使用Oracle数据库,但考虑到MySQL是更常见...

    SpringBoot整合mybatis结合pageHelper插件实现分页

    总结一下,通过SpringBoot整合Mybatis并使用PageHelper插件,我们可以方便地实现分页功能,而无需手动编写复杂的分页SQL。PageHelper的配置简单,使用方便,大大提高了开发效率。同时,它还支持多种数据库,具有良好...

    SpringBoot+Mybatis+PageHelper

    PageHelper提供了一种简单的分页实现方式,它通过拦截器处理SQL,实现了对多种数据库的通用分页功能。开发者只需在Mapper接口的方法上添加PageHelper提供的注解,就可以实现高效的分页查询。 **SpringBoot整合...

    SpringBoot与PageHelper的整合示例详解.docx

    SpringBoot与PageHelper的整合是将PageHelper分页插件应用于SpringBoot项目中,以便在Mybatis框架下实现高效、便捷的物理分页功能。PageHelper是Mybatis的一个开源插件,它通过拦截器的方式自动处理分页逻辑,极大地...

    springboot+mybatis+pageHelper

    在本项目中,"springboot+mybatis+pageHelper"是一个基于Spring Boot、MyBatis和PageHelper的简单但功能齐全的数据分页解决方案。这个框架组合是目前企业级开发中非常流行的技术栈,尤其适用于快速构建后端服务。...

    SpringBoot+Mybatis+Druid+PageHelper实现多数据源并分页方法

    总结来说,SpringBoot整合Mybatis、Druid和PageHelper可以创建一个高性能、易维护的后端系统。通过Druid,我们能够监控数据库性能,优化连接池配置;使用PageHelper可以简化分页查询的实现;而多数据源的支持则增强...

    SpringBoot mybatis druid pagehelper freemarker 整合实例

    PageHelper通过拦截器方式工作,无需编写任何分页代码,只需在MyBatis的Mapper接口方法中添加分页参数,即可实现高效、便捷的分页效果。 FreeMarker则是一个模板引擎,用于生成动态Web内容。它与SpringBoot整合后,...

    SpringBoot整合mybatis-plus实现多数据源的动态切换且支持分页查询.pdf

    在SpringBoot项目中,整合Mybatis-Plus并实现多数据...以上就是SpringBoot整合Mybatis-Plus实现多数据源动态切换并支持分页查询的详细过程。这个实现方案能够有效地应对复杂的数据库环境,提高系统的灵活性和可扩展性。

    springboot集成pagehelper.rar

    在本文中,我们将深入探讨如何在SpringBoot项目中集成PageHelper插件,这是一个非常流行的MyBatis分页插件,可以极大地简化数据查询时的分页处理。PageHelper提供了强大的功能,包括自动处理物理分页、支持多种...

    springboot整合mybatis-plus实现多表分页查询

    至此,我们就完成了SpringBoot整合MyBatis-Plus实现多表分页查询的基本步骤。通过这种方式,我们可以轻松地处理复杂的关联查询,同时利用MyBatis-Plus的分页功能提高查询效率。记得在实际应用中根据需求调整关联关系...

    SpringBoot 2.0.2.RELEASE以注解的形式整合 Mybatis+PageHelper (分页)

    本篇文章将详细讲解如何在该版本中以注解的形式整合Mybatis与PageHelper实现分页功能。 首先,我们需要引入必要的依赖。在`pom.xml`文件中,添加SpringBoot对Mybatis和PageHelper的支持: ```xml <groupId>org....

    springboot + mybatis + pagehelper分页插件 + druid连接池 + generator逆向插件,请阅读README.md

    在本项目中,我们主要探讨的是一个基于Spring Boot框架,结合MyBatis、PageHelper分页插件、Druid连接池以及Generator逆向工程插件的整合应用。这些技术都是现代Java开发中常用且重要的组件,下面将逐一详细介绍它们...

    基于SpringBoot+Mybatis PageHelper 分页+JAP +Restful风格的小案例

    PageHelper是Mybatis的一个插件,专门用于实现分页查询,它能够自动处理分页参数,提高分页效率,减少代码量。在本案例中,PageHelper与Mybatis配合,提供了灵活高效的分页功能。 至于RESTful风格,这是一种网络...

    springboot整合mybatis集成分页查询事务配置,页面模板

    在本项目中,我们主要探讨的是如何在SpringBoot框架下整合MyBatis,实现数据库的分页查询,事务管理,并配置前端页面模板。下面将详细阐述这些知识点。 首先,SpringBoot是一个快速开发框架,它简化了Spring应用的...

    Springboot整合分页插件PageHelper步骤解析

    Springboot整合分页插件PageHelper步骤解析 一、概述 在本文中,我们将详细介绍如何在 Spring Boot 项目中整合分页插件 PageHelper,包括引入依赖、配置文件配置和使用方法。PageHelper 是一个功能强大且广泛使用...

    springboot整合

    SpringBoot整合Mybatis,通常会使用Mybatis-Spring-Boot-Starter,配合Mapper和PageHelper插件,实现数据库操作的简单高效。 **3. Druid数据源** Druid是阿里巴巴开源的一个高性能、扩展性良好的数据库连接池。...

    Bootstrap Paginator+PageHelper实现分页效果

    - PageHelper是一个基于Mybatis的通用分页插件,它可以在查询数据库时自动进行分页操作,极大地简化了后端分页逻辑的实现。 2. 实现分页效果的步骤: - 首先在项目中添加PageHelper的Maven依赖,这是集成...

    springboot+swagger-ui+PageHelper分页+logback+动态定时

    PageHelper通过拦截器方式实现了对MyBatis的无缝支持,无需修改原有代码即可实现分页。在SpringBoot项目中,我们需要引入PageHelper的依赖,配置其核心参数(如数据库类型、连接字符串等),并在服务层的方法中调用...

    Springboot整合mybatis thymeleaf, pagehelper,单元测试

    PageHelper支持多种数据库,包括MySQL、Oracle等,且与Spring Boot结合使用时,可以轻松实现高效的分页效果。 单元测试是软件开发过程中的重要环节,它确保每个独立的代码模块都能正常工作。Spring Boot提供了...

Global site tag (gtag.js) - Google Analytics