oracle+mybatis-plus+springboot實(shí)現(xiàn)分頁查詢的實(shí)例
今天蠢了一上午才弄出這玩意,話不多說上代碼!
1、建一個(gè)配置類
package com.sie.demo.config;
import com.baomidou.mybatisplus.annotation.DbType;
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/**
* @author liaozhifeng
* @date 2021/7/31 11:14
* @Version 1.0
*/
@Configuration
@ConditionalOnClass(value = {PaginationInterceptor.class})
public class MybatisPlusConfig {
// 最新版
@Bean
public MybatisPlusInterceptor mybatisPlusInterceptor() {
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
// 數(shù)據(jù)庫的配置DbType.ORACLE 根據(jù)自己的數(shù)據(jù)庫選擇
interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.ORACLE));
return interceptor;
}
}
2、service層的代碼
package com.sie.demo.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.sie.demo.entity.Users;
import com.sie.demo.entity.vo.PageUserVo;
import com.sie.demo.mapper.UserMapper;
import com.sie.demo.service.UserService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.util.DigestUtils;
import javax.annotation.Resource;
import javax.servlet.http.HttpSession;
import java.util.List;
/**
* @author liaozhifeng
* @date 2021/7/27 14:03
* @Version 1.0
*/
@Service
@Slf4j
public class UserServiceImpl extends ServiceImpl<UserMapper, Users> implements UserService {
@Resource
UserMapper userMapper;
/**
* 分頁查詢用戶
* @param currentPage
* @param pageSize
* @return
*/
@Override
public PageUserVo selectAll(long currentPage, long pageSize) {
IPage<Users> userPage = new Page<>(currentPage, pageSize);//參數(shù)一是當(dāng)前頁,參數(shù)二是每頁個(gè)數(shù)
IPage<Users> iPage = userMapper.selectPage(userPage, null);
List<Users> list = iPage.getRecords();
Long total = iPage.getTotal();
PageUserVo pageUserVo = new PageUserVo(list, total);
return pageUserVo;
}
}
3、controller層 RetResult是我自己定義的一個(gè)統(tǒng)一返回的泛型對(duì)象
package com.sie.demo.controller;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.conditions.query.QueryChainWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.sie.demo.entity.RetCode;
import com.sie.demo.entity.RetResponse;
import com.sie.demo.entity.RetResult;
import com.sie.demo.entity.Users;
import com.sie.demo.entity.vo.PageUserVo;
import com.sie.demo.service.impl.UserServiceImpl;
import com.sie.demo.util.TokenUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpSession;
import java.util.List;
@Controller
@RestController
@RequestMapping("user")
@Slf4j
public class UserController {
@Autowired
UserServiceImpl userService;
/**
*
*
* @param currentPage
* @param pageSize
* @return
*/
@GetMapping("selectAll")
public RetResult<PageUserVo> selectAll(long currentPage, long pageSize) {
log.info(currentPage+pageSize+"=========================");
PageUserVo pageUserVo = userService.selectAll(currentPage,pageSize);
return RetResponse.makeOKRsp(pageUserVo);
}
}
到此這篇關(guān)于oracle+mybatis-plus+springboot實(shí)現(xiàn)分頁查詢的實(shí)例的文章就介紹到這了,更多相關(guān) mybatis-plus springboot分頁查詢內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
IDEA中Mybatis的MGB使用逆向工程配置的詳細(xì)教程
這篇文章主要介紹了IDEA中Mybatis的MGB使用逆向工程配置,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-09-09
java實(shí)現(xiàn)停車場管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)停車場管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-11-11
在SpringBoot項(xiàng)目中整合攔截器的詳細(xì)步驟
在系統(tǒng)中經(jīng)常需要在處理用戶請求之前和之后執(zhí)行一些行為,例如檢測用戶的權(quán)限,或者將請求的信息記錄到日志中,即平時(shí)所說的"權(quán)限檢測"及"日志記錄",下面這篇文章主要給大家介紹了關(guān)于在SpringBoot項(xiàng)目中整合攔截器的相關(guān)資料,需要的朋友可以參考下2022-09-09
springboot集成shiro權(quán)限管理簡單實(shí)現(xiàn)
這篇文章主要介紹了springboot集成shiro權(quán)限管理簡單實(shí)現(xiàn),文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-08-08
Java二維數(shù)組查找功能代碼實(shí)現(xiàn)
這篇文章主要介紹了Java二維數(shù)組查找功能代碼實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06
Java結(jié)構(gòu)型設(shè)計(jì)模式之適配器模式詳解
適配器模式,即將某個(gè)類的接口轉(zhuǎn)換成客戶端期望的另一個(gè)接口的表示,主要目的是實(shí)現(xiàn)兼容性,讓原本因?yàn)榻涌诓黄ヅ?,沒辦法一起工作的兩個(gè)類,可以協(xié)同工作。本文將通過示例詳細(xì)介紹適配器模式,需要的可以參考一下2022-09-09
SpringCloud分布式事務(wù)Seata部署和集成過程
這篇文章主要介紹了SpringCloud分布式事務(wù)Seata部署和集成過程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-10-10

