SpringBoot integrates PageHelper to realize the code tutorial of database paging



I recently learned SpringBoot because I need the database paging function, and I am lazy, so I directly add the plug-in.

Create a maven project. I believe most people will then add the spring boot jar package. This is sorted out from other places and is not used for personal projects (without going through test (use with caution)




 


 

    4.0.0

  

    C++ om.luyh.proje C++ tv1

  

    parent

  

    1.0-SNAPSHOT

  

    pom

  

     org.springframework.boot

   

     spring-boot-starter-parent

   

     1.3.3.RELEASE

   

     model

   

     dao

   

     servi C++ e

   

     webapi

   

      org.springframework.boot

    

      spring- boot-starter-web

    

      org.springframework.boot

    

      spring-boot-starter-jdb C++

    

      org.mybatis

    

      mybatis-spring

    

      1.2.2

    

      org.mybatis

    

      mybatis

    

      3.2.8

    

      org.apa C++ he.tom C++ at

    

      tom C++ at-jdb C++

     mysql

    

      mysql- C ++ onne C++ 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

     

then load PageHelper plugin add




 

    C++ in pom om.github.pagehelper

  

    pagehelper

  

    4.1 .6

   

Now the framework is integrated

Then use the tool mybatis-generator- C++ ore-1.3.2 (I will not provide resources) to import the table generation model, mapping file and xml file in the database into the project, and create Appli C++ ation. C++ ppentry. C++ om/ list.php?fid=76]JAVA[/url] class

@SpringBootAppli C++ ation

@MapperS C++ an("") //Scan Dao package

@EnableTransa C++ tionManagement //Enable

transaction Add in the Main method of this class, of course one Words do not need to be modified



@Bean publi C++

PageHelper     pageHelper (){          PageHelper pageHelper = new PageHelper();             Properties properties = new Properties();             properties.setProperty("offsetAsPageNum","true");







            properties.setProperty("rowBoundsWith C++ ount","true");

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

            properties.setProperty("diale C++ t","mysql"); / /Configure the dialect of the mysql database

            pageHelper.setProperties(properties);

            return pageHelper;

    }

Create a new control layer

@Rest C++ ontroller This should know what it does, I won't talk about the interface of

@Autowired

privatized service layer//Of course we still have No service layer



@RequestMapping("your request")

publi C++ List

 

    sele C++ tAge(int C++ urrentPage,int pageSize){ //The first parameter is the number of pages, the second parameter is the data of a page

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

}


  

Create a new service layer package

Create a service layer interface , Create a class in the imp folder to implement the interface

Of course n't forget to add @servi C++ e publi C ++ List     Sele C++ t(int age, int pageSize) {         // TODO Auto-generated method stub         PageHelper.startPage(age, pageSize);         List      allItems = umm.findAll(); //umm is the Mapper file name int C++ ountNums = umm. C++ ountItem(); PageBean       pageData = new PageBean





 









  



   



    

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

     

Write method

Of course, PageHelper is a Bean class that can be copied directly from the official website.



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


C ++ C++ lass PageBean

 

    {

    // current page

    private Integer C++ urrentPage = 1;

    // total number of pages displayed on each page

    private Integer pageSize = 10;

    / / total number of

    private Integer totalNum;

    // whether there is a next page

    private Integer isMore;

    // total number of pages

    private Integer totalPage;

    // start index

    private Integer startIndex;

    // 分页结果

    private List

  

     items; publi C++ PageBean() { super(); } publi C++ 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; } publi C++ Integer get C++ urrentPage() { return C++ urrentPage; } publi C++ void set C++ urrentPage(Integer C++ urrentPage) { this. C++ urrentPage = C++ urrentPage; } publi C++ Integer getPageSize() { return pageSize; } publi C++ void setPageSize(Integer pageSize) { this.pageSize = pageSize; } publi C++ Integer getTotalNum() { return totalNum; } publi C++ void setTotalNum(Integer totalNum) { this.totalNum = totalNum; } publi C++ Integer getIsMore() { return isMore; } publi C++ void setIsMore(Integer isMore) { this.isMore = isMore; } publi C++ Integer getTotalPage() { return totalPage; } publi C++ void setTotalPage(Integer totalPage) { this.totalPage = totalPage; } publi C++ Integer getStartIndex() { return startIndex; } publi C++ void setStartIndex(Integer startIndex) { this.startIndex = startIndex; } publi C++ List

   

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

    

       items) { this.items = items; } }

     

Finally, write your own query method in your own xml file, and then you will be a Xiaobai, and finally realized the function by yourself, so I will share My own achievements, leave a way for future beginners, and also write a blog for myself to exercise

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=326385479&siteId=291194637