Mybatis-Plus如何配置分页对象

 更新时间:2022年08月11日 10:13:27   作者:只因为你而温柔  
本文主要介绍了Mybatis-Plus如何配置分页对象,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

配置类

package com.xiaoge.config;

import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * @Author: ZhangXiao
 * @DateTime: 2022/4/19 14:20
 * @Description:
 */
@Configuration  // 放在ioc容器中
@MapperScan(basePackages = {"com.xiaoge.mapper"}) // 扫描对应的mapper接口文件包
public class MybatisPlusConfig {

      // 必须要加Bean
    @Bean
    public PaginationInterceptor paginationInterceptor() {
        return new PaginationInterceptor();
    }

}

SysUserController

package com.xiaoge.controller;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.xiaoge.anno.Log;
import com.xiaoge.domain.SysUser;
import com.xiaoge.service.SysUserService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * @Author: ZhangXiao
 * @DateTime: 2022/4/19 19:19
 * @Description:
 */
@Api(tags = "后台用户接口")
@RestController
@RequestMapping("sys/user")
public class SysUserController {

    @Autowired
    private SysUserService sysUserService;

    /**
     * 分页查询管理员列表
     * @param page
     * @return
     */
    @ApiOperation("分页查询管理员列表")
    @GetMapping("page")
    @Log(operation = "分页查询管理员列表")
    public ResponseEntity<IPage<SysUser>> getSysUserPage(Page<SysUser> page, SysUser sysUser) {
        IPage<SysUser> sysUserIPage = sysUserService.findSysUserByPage(page, sysUser);
        return ResponseEntity.ok(sysUserIPage);
    }

}

SysUserService

package com.xiaoge.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.xiaoge.domain.SysUser;

/**
* @Author:  ZhangXiao
* @DateTime:  2022/4/19 19:13
* @Description:
*/

public interface SysUserService extends IService<SysUser>{


    /**
     * 分页查询管理员列表
     * @param page
     * @param sysUser
     * @return
     */
    IPage<SysUser> findSysUserByPage(Page<SysUser> page, SysUser sysUser);
}

SysUserServiceImpl

package com.xiaoge.service.impl;

import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.metadata.OrderItem;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.xiaoge.domain.SysUser;
import com.xiaoge.mapper.SysUserMapper;
import com.xiaoge.service.SysUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
import org.springframework.util.StringUtils;

/**
 * @Author:  ZhangXiao
 * @DateTime:  2022/4/19 19:13
 * @Description:
 */

@Service
public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> implements SysUserService{

    @Autowired
    private SysUserMapper sysUserMapper;

    /**
     * 分页查询管理员列表
     *
     * @param page
     * @param sysUser
     * @return
     */
    @Override
    public IPage<SysUser> findSysUserByPage(Page<SysUser> page, SysUser sysUser) {
        page.addOrder(OrderItem.desc("create_time"));
        return sysUserMapper.selectPage(page, new LambdaQueryWrapper<SysUser>()
                .like(!StringUtils.isEmpty(sysUser.getUsername()), SysUser::getUsername, sysUser.getUsername())
                .eq(!ObjectUtils.isEmpty(sysUser.getStatus()), SysUser::getStatus, sysUser.getStatus()));

    }
}

到此这篇关于Mybatis-Plus如何配置分页对象的文章就介绍到这了,更多相关Mybatis-Plus 配置分页对象内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • java实现高效下载文件的方法

    java实现高效下载文件的方法

    这篇文章主要为大家详细介绍了java实现高效下载文件的几种方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • Spring Boot打war包的实例教程

    Spring Boot打war包的实例教程

    本篇文章主要介绍了Spring Boot打war包的实例教程,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-02-02
  • Java源码解析HashMap的resize函数

    Java源码解析HashMap的resize函数

    今天小编就为大家分享一篇关于Java源码解析HashMap的resize函数,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-01-01
  • Java实战项目 图书管理系统

    Java实战项目 图书管理系统

    这篇文章主要介绍了使用java SSM jsp mysql maven设计实现的精品图书管理系统,是一个很好的实例,对大家的学习和工作具有借鉴意义,建议收藏一下
    2021-09-09
  • springBoot之如何获取接口请求数据和返回数据实现日志

    springBoot之如何获取接口请求数据和返回数据实现日志

    这篇文章主要介绍了springBoot之如何获取接口请求数据和返回数据实现日志问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • SpringBoot中@Configuration和@Bean和@Component相同点详解

    SpringBoot中@Configuration和@Bean和@Component相同点详解

    这篇文章主要介绍了SpringBoot中@Configuration和@Bean和@Component相同点详解,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-04-04
  • 手把手教你JAVA进制之间的转换

    手把手教你JAVA进制之间的转换

    这篇文章主要介绍了Java实现的进制转换,结合完整实例形式分析了Java实现二进制、十六进制、字符串、数组等相关转换操作技巧,需要的朋友可以参考下
    2021-08-08
  • Java实现Fast DFS、服务器、OSS上传功能

    Java实现Fast DFS、服务器、OSS上传功能

    这篇文章主要介绍了Java实现Fast DFS、服务器、OSS上传功能,在实际的业务中,可以根据客户的需求设置不同的文件上传需求,支持普通服务器上传+分布式上传(Fast DFS)+云服务上传OSS(OSS),需要的朋友可以参考下
    2024-04-04
  • 解决JAVA非对称加密不同系统加密结果不一致的问题

    解决JAVA非对称加密不同系统加密结果不一致的问题

    这篇文章主要介绍了解决JAVA非对称加密不同系统加密结果不一致的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-10-10
  • Java虚拟机之双亲委派机制详解

    Java虚拟机之双亲委派机制详解

    这篇文章主要为大家介绍了Java虚拟机之双亲委派机制,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2021-12-12

最新评论