SpringBoot之分頁PageHelper

前言

今天我爲你們帶來一個被用爛的插件(PageHelper)
之因此還要寫一遍
是由於在springboot上使用仍是有點不同的
網上也有不少教程,可是在大天朝感受複製粘貼太多,並且不少都不靠譜
你按照網上許多教程來進行插件配置以後發現並無實現分頁功能
(博主看到那些所謂的複製文章,且本身又不測試的文章真的很氣)
因此今天我想給你們帶來一份百分百能success的插件教程java

POM配置

有兩種方式,咱們這裏只使用原生的PageHelper
導入Maven:git

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

Java配置

在springboot的啓動類(WarApplication.java)裏面注入:github

@Bean
    PageHelper pageHelper(){
        //分頁插件
        PageHelper pageHelper = new PageHelper();
        Properties properties = new Properties();
        properties.setProperty("reasonable", "true");
        properties.setProperty("supportMethodsArguments", "true");
        properties.setProperty("returnPageInfo", "check");
        properties.setProperty("params", "count=countSql");
        pageHelper.setProperties(properties);

        //添加插件
        new SqlSessionFactoryBean().setPlugins(new Interceptor[]{pageHelper});
        return pageHelper;
    }

注意:網上不少文章都不貼插件的注入,因此會失敗ajax

Controller分頁寫法

語句pageNum表示當前頁,5表示當前頁顯示的個數爲5個
當前頁頁設置了默認值爲1spring

@Autowired
    private BlogMapper blogMapper;

    @ApiOperation(value = "拿到全部博客",notes = "")
    @GetMapping(value = "blogs")
    public R1 ajaxBlog(@RequestParam(value = "pageNum",defaultValue = "1")Integer pageNum){
        PageHelper.startPage(pageNum,5);
        List<Blog> blogList = blogMapper.selectByExample(new BlogExample());
        PageInfo<Blog> pageInfo = new PageInfo<Blog>(blogList);
        return R1.add("blog",pageInfo);
    }

POSTMAN顯示結果

當我把頁數設置爲5的時候,插件會默認選擇查詢結果的最後一頁:springboot

clipboard.png

以上即是PageHelper在SpringBoot上的應用;
以爲還能夠的請點個贊,贊不了也能夠收藏下;
總之,謝謝閱讀~app

相關文章
相關標籤/搜索