1. 程式人生 > >SpringBoot+Mybatis配置Pagehelper分頁插件實現自動分頁

SpringBoot+Mybatis配置Pagehelper分頁插件實現自動分頁

pri ldb tar pos method prop 註意 dss stk

SpringBoot+Mybatis配置Pagehelper分頁插件實現自動分頁

**SpringBoot+Mybatis使用Pagehelper分頁插件自動分頁,非常好用,不用在自己去計算和組裝了。全部自動實現。
話不多說,直接上代碼:

第一步pom文件配置添加jar:

<!-- mybatis的分頁插件 -->
<dependency>
   <groupId>com.github.pagehelper</groupId>
   <artifactId>pagehelper</artifactId>
   <version>4.1.6</version>
</dependency>                   

第二步配置application.properties文件或者 application.yml 文件:

註意你是配置的什麽數據進行分頁操作 pagehelper.helperDialect=postgresql 我這裏是postgresql數據庫
支持Oracle,Mysql,MariaDB,SQLite,Hsqldb,PostgreSQL六種數據庫

application.properties:

#pagehelper分頁插件配置
pagehelper.helperDialect=mysql
pagehelper.reasonable=true
pagehelper.supportMethodsArguments=true
pagehelper.params=count=countSql

application.yml

pagehelper:
  helperDialect: mysql
  reasonable: true
  supportMethodsArguments: true
  params: count=countSql

第三步配置運行類 Application 添加pagehelp插件,在main方法之後被加載

@SpringBootApplication
//將項目中對應的mapper類的路徑加進來就可以了
@MapperScan({"org.baihuida.hints.dao"})
public class CodeHintsApplication {

    public static void main(String[] args) {
        SpringApplication.run(CodeHintsApplication.class, args);
    }
    
    //配置mybatis的分頁插件pageHelper
    @Bean
    public PageHelper pageHelper(){
        PageHelper pageHelper = new PageHelper();
        Properties properties = new Properties();
        properties.setProperty("offsetAsPageNum","true");
        properties.setProperty("rowBoundsWithCount","true");
        properties.setProperty("reasonable","true");
        properties.setProperty("dialect","mysql");    //配置mysql數據庫的方言
        pageHelper.setProperties(properties);
        return pageHelper;
    }
    
}

第四步配置controller層:

@RequestMapping("queryKeywords")
    public PageInfo<Keywords> queryKeywords(@RequestParam(defaultValue="1") int pageNum, 
               @RequestParam(defaultValue="3") int pageSize) {
        
        PageInfo<Keywords> pageInfo = keywordsService.getLogInfoPage(pageNum,pageSize);
        return pageInfo;
    }

第五步配置service層:

@Override
    public PageInfo<Keywords> getLogInfoPage(int pageNum, int pageSize) {
        PageHelper.startPage(pageNum,pageSize);
        List<Keywords> list= keywordsMapper.listKeywords();
        PageInfo<Keywords> pageInfo = new PageInfo<Keywords>(list);
        
        return pageInfo;
    }

第六步配置 service

public PageInfo<Keywords> getLogInfoPage(int pageNum, int pageSize);

實現類

@Override
public PageInfo<Keywords> getLogInfoPage(int pageNum, int pageSize) {
    PageHelper.startPage(pageNum,pageSize);
    List<Keywords> list= keywordsMapper.listKeywords();
    PageInfo<Keywords> pageInfo = new PageInfo<Keywords>(list);
    
    return pageInfo;
}

第七步Dao層:

List<Keywords> listKeywords();

第八步xml層:

<select id="listKeywords" resultType="org.baihuida.hints.entity.Keywords">

    select keyword from keywords

  </select>

SpringBoot+Mybatis配置Pagehelper分頁插件實現自動分頁