1. 程式人生 > >Spring Boot系列教程十一: Mybatis使用分頁外掛PageHelper

Spring Boot系列教程十一: Mybatis使用分頁外掛PageHelper

一.前言

上篇部落格中介紹了spring boot整合mybatis的方法,基於上篇文章這裡主要介紹如何使用分頁外掛PageHelper。在MyBatis中提供了攔截器介面,我們可以使用PageHelp最為一個外掛裝入到SqlSessionFactory,實現攔截器功能。

二.實現

pom.xml檔案中新增依賴包

		<dependency>
		    <groupId>com.github.pagehelper</groupId>
		    <artifactId>pagehelper</artifactId>
		    <version>4.1.0</version>
		</dependency>

建立MybatisConf類
package com.woniu.mybatisconf;

import java.util.Properties;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import com.github.pagehelper.PageHelper;

/*
 * 註冊MyBatis分頁外掛PageHelper
 */

@Configuration
public class MybatisConf {
	    @Bean
	    public PageHelper pageHelper() {
	       System.out.println("MyBatisConfiguration.pageHelper()");
	        PageHelper pageHelper = new PageHelper();
	        Properties p = new Properties();
	        p.setProperty("offsetAsPageNum", "true");
	        p.setProperty("rowBoundsWithCount", "true");
	        p.setProperty("reasonable", "true");
	        pageHelper.setProperties(p);
	        return pageHelper;
	    }
}

這時就可以使用PageHelp外掛了,在controller中直接使用。

package com.woniu.controller;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import com.github.pagehelper.PageHelper;
import com.woniu.bean.User;
import com.woniu.mapper.UserMaper;

@RestController
@RequestMapping("/web")
public class WebController {
    @Autowired
    private UserMaper mapper;
    
    
    @RequestMapping("/index")
    public List<User> selectAge(int age){
        /*
         * 第一個引數是第幾頁;第二個引數是每頁顯示條數。
         */
        PageHelper.startPage(1,2);
        return mapper.Select(age);
    }
}

該工程"springboot_mybatis_demo2"下載地址: 點選開啟連結

spring boot討論群:611262656,一鍵加群:點選加群

更多技術文章請關注微信公眾號“Java架構師之路”: