oracle+mybatis-plus+springboot实现分页查询的实例

 更新时间:2021年08月05日 09:19:48   作者:热爱生活的小码农  
本文主要介绍了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
@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);//参数一是当前页,参数二是每页个数
        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")
@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);
    }
}

到此这篇关于oracle+mybatis-plus+springboot实现分页查询的实例的文章就介绍到这了,更多相关 mybatis-plus springboot分页查询内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java使用观察者模式实现气象局高温预警功能示例

    Java使用观察者模式实现气象局高温预警功能示例

    这篇文章主要介绍了Java使用观察者模式实现气象局高温预警功能,结合完整实例形式分析了java观察者模式实现气象局高温预警的相关接口定义、使用、功能操作技巧,并总结了其设计原则与适用场合,具有一定参考借鉴价值,需要的朋友可以参考下
    2018-04-04
  • Java实现的3des加密解密工具类示例

    Java实现的3des加密解密工具类示例

    这篇文章主要介绍了Java实现的3des加密解密工具类,结合完整实例形式分析了3des加密解密的具体步骤与相关操作技巧,需要的朋友可以参考下
    2017-10-10
  • SpringBoot通过配置Swagger权限解决Swagger未授权访问漏洞问题

    SpringBoot通过配置Swagger权限解决Swagger未授权访问漏洞问题

    这篇文章主要介绍了SpringBoot通过配置Swagger权限解决Swagger未授权访问漏洞问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-05-05
  • springboot vue完成编辑页面发送接口请求功能

    springboot vue完成编辑页面发送接口请求功能

    这篇文章主要为大家介绍了springboot+vue完成编辑页发送接口请求功能,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-05-05
  • MyBatis中正则使用foreach拼接字符串

    MyBatis中正则使用foreach拼接字符串

    这篇文章主要介绍了MyBatis中正则使用foreach拼接字符串,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-01-01
  • Spring Boot整合Thymeleaf详解

    Spring Boot整合Thymeleaf详解

    这篇文章主要介绍了Spring Boot整合Thymeleaf详解,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-08-08
  • springboot集成tkmapper及基本使用教程

    springboot集成tkmapper及基本使用教程

    tk.mybatis可以节省程序员的大部分时间,对于程序员来说关于一张表的操作无非就是增删改查,tk.mybatis提供了一些基本操作的SQL语句,比如说按表的主键查询、删除等基本操作,我们接下来就来介绍一些springboot集成tkmapper及基本使用
    2022-11-11
  • Java JDBC基本使用方法详解

    Java JDBC基本使用方法详解

    这篇文章主要介绍了Java JDBC基本使用方法,结合实例形式详细分析了java JDBC基本原理、用法及操作注意事项,需要的朋友可以参考下
    2020-04-04
  • Maven 命令行打包 和 pom.xml的常用配置详解

    Maven 命令行打包 和 pom.xml的常用配置详解

    这篇文章主要介绍了Maven 命令行打包 和 pom.xml的常用配置详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • JUnit中获取测试类及方法的名称实现方法

    JUnit中获取测试类及方法的名称实现方法

    这篇文章主要介绍了JUnit中获取测试类及方法的名称实现方法,本文使用了JUnit中提供的TestName实现,不过还有一些编程细节需要注意,需要的朋友可以参考下
    2015-06-06

最新评论