oracle+mybatis-plus+springboot實(shí)現(xiàn)分頁(yè)查詢的實(shí)例
今天蠢了一上午才弄出這玩意,話不多說(shuō)上代碼!
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ù)庫(kù)的配置DbType.ORACLE 根據(jù)自己的數(shù)據(jù)庫(kù)選擇 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; /** * 分頁(yè)查詢用戶 * @param currentPage * @param pageSize * @return */ @Override public PageUserVo selectAll(long currentPage, long pageSize) { IPage<Users> userPage = new Page<>(currentPage, pageSize);//參數(shù)一是當(dāng)前頁(yè),參數(shù)二是每頁(yè)個(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)分頁(yè)查詢的實(shí)例的文章就介紹到這了,更多相關(guān) mybatis-plus springboot分頁(yè)查詢內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
淺析SpringBoot微服務(wù)中異步調(diào)用數(shù)據(jù)提交數(shù)據(jù)庫(kù)的問(wèn)題
這篇文章主要介紹了SpringBoot微服務(wù)中異步調(diào)用數(shù)據(jù)提交數(shù)據(jù)庫(kù)的問(wèn)題,今天本文涉及到的知識(shí)點(diǎn)不難,都是很簡(jiǎn)單的crud操作,本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2022-07-07springboot?使用clickhouse實(shí)時(shí)大數(shù)據(jù)分析引擎(使用方式)
這篇文章主要介紹了springboot?使用clickhouse實(shí)時(shí)大數(shù)據(jù)分析引擎的方法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2022-02-02Java中的Semaphore信號(hào)量使用方法代碼實(shí)例
這篇文章主要介紹了Java中的Semaphore信號(hào)量使用方法代碼實(shí)例,Semaphore是一種基于計(jì)數(shù)的信號(hào)量,它可以設(shè)定一個(gè)閾值,基于此,多個(gè)線程競(jìng)爭(zhēng)獲取許可信號(hào),做自己的申請(qǐng)后歸還,超過(guò)閾值后,線程申請(qǐng)?jiān)S可信號(hào)將會(huì)被阻塞,需要的朋友可以參考下2023-11-11Java基礎(chǔ)開發(fā)之JDBC操作數(shù)據(jù)庫(kù)增刪改查,分頁(yè)查詢實(shí)例詳解
這篇文章主要介紹了Java基礎(chǔ)開發(fā)之JDBC操作數(shù)據(jù)庫(kù)增刪改查,分頁(yè)查詢實(shí)例詳解,需要的朋友可以參考下2020-02-02SpringBoot如何通過(guò)webjars管理靜態(tài)資源文件夾
這篇文章主要介紹了SpringBoot如何通過(guò)webjars管理靜態(tài)資源文件夾,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-10-10使用OpenFeign實(shí)現(xiàn)服務(wù)調(diào)用的方法詳解
OpenFeign是運(yùn)行在客戶端的聲明式服務(wù)調(diào)用的框架,通過(guò)聲明接口的方式來(lái)達(dá)到對(duì)服務(wù)的調(diào)用,本文就來(lái)和大家講講如何使用OpenFeign實(shí)現(xiàn)服務(wù)調(diào)用吧2023-06-06