oracle+mybatis-plus+springboot实现分页查询的实例
今天蠢了一上午才弄出这玩意,话不多说上代码!
1、建一个配置类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();//数据库的配置DbType.ORACLE 根据自己的数据库选择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@Slf4jpublic 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);//参数一是当前页,参数二是每页个数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是我自己定义的一个统一返回的泛型对象
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')@Slf4jpublic 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); }}
到此这篇关于oracle+mybatis-plus+springboot实现分页查询的实例的文章就介绍到这了,更多相关 mybatis-plus springboot分页查询内容请搜索好吧啦网以前的文章或继续浏览下面的相关文章希望大家以后多多支持好吧啦网!
相关文章: