SpringBoot整合PageHelper完成数据库分页的代码教程ITeye - AG环亚娱乐

SpringBoot整合PageHelper完成数据库分页的代码教程ITeye

2019-01-10 17:59:40 | 作者: 尔容 | 标签: 数据库,完成,自己 | 浏览: 2210



最近学习了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( quot;offsetAsPageNum quot;, quot;true quot;);

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

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

  properties.setProperty( quot;dialeC++t quot;, quot;mysql quot;);  //装备mysql数据库的方言

  pageHelper.setProperties(properties);

  return pageHelper;

  }

新建操控层

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

@Autowired

私有化效劳层的接口 //当然咱们现在还没有建效劳层



@RequestMapping( quot;你的恳求 quot;)

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文件 中写自己的查询办法吧 然后功德圆满 自己便是小白一个,十分困难自己完成了功用,也就共享自己的效果,给今后的初学者留一个路,也是给自己训练训练写博客

版权声明
本文来源于网络,版权归原作者所有,其内容与观点不代表AG环亚娱乐立场。转载文章仅为传播更有价值的信息,如采编人员采编有误或者版权原因,请与我们联系,我们核实后立即修改或删除。

猜您喜欢的文章

阅读排行

  • 1

    数组调集增加算法ITeye

    调集,数据,数组
  • 2
  • 3
  • 4

    递归算法(附华为笔试题一个)ITeye

    一般,功用,重复使用
  • 5

    java线程总结ITeye

    线程,状况,运转
  • 6

    C#根本参考资料ITeye

    类型,目标,转化
  • 7

    pymongo根本操作ITeye

    回来,链接,一切
  • 8
  • 9
  • 10

    深入分析各排序算法ITeye

    排序,算法,快排