SpringBoot+Mybatis-Plus+PageHelper分页+多条件查询

简介: SpringBoot+Mybatis-Plus+PageHelper分页+多条件查询

引入PageHelper依赖

<dependency>
            <groupId>com.github.pagehelper</groupId>
            <artifactId>pagehelper-spring-boot-starter</artifactId>
            <version>1.4.6</version>
            <!--使用spring boot2整合 pagehelper-spring-boot-starter必须排除一下依赖
                因为pagehelper-spring-boot-starter也已经在pom依赖了mybatis与mybatis-spring
                所以会与mybatis-plus-boot-starter中的mybatis与mybatis-spring发生冲突
            -->
            <exclusions>
                <exclusion>
                    <groupId>org.mybatis</groupId>
                    <artifactId>mybatis</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.mybatis</groupId>
                    <artifactId>mybatis-spring</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

MoveBookQueryDto

public class MoveBookQueryDto  {
    private String area;
    private String cartype;
    private Date startMoveDate;
    private Date endMoveDate;
    private String contact;
    private Integer status;
    private  int pageNum;
    private int pageSize;
}

MoveBookingService

PageInfo<MoveBooking> moveBookList(MoveBookQueryDto moveBookQueryDto);

MoveBookingServiceImpl

@Override
public PageInfo<MoveBooking> moveBookList(MoveBookQueryDto moveBookQueryDto) {
    PageHelper.startPage(moveBookQueryDto.getPageNum(),moveBookQueryDto.getPageSize());
    LambdaQueryWrapper<MoveBooking> moveBookingLambdaQueryWrapper = new LambdaQueryWrapper<>();
    moveBookingLambdaQueryWrapper.eq(moveBookQueryDto.getArea()!=null,MoveBooking::getArea,moveBookQueryDto.getArea())
            .eq(moveBookQueryDto.getCartype()!=null,MoveBooking::getCartype,moveBookQueryDto.getCartype())
            .ge(moveBookQueryDto.getStartMoveDate()!=null,MoveBooking::getMovedate,moveBookQueryDto.getStartMoveDate())
            .le(moveBookQueryDto.getEndMoveDate()!=null,MoveBooking::getMovedate,moveBookQueryDto.getEndMoveDate())
            .eq(moveBookQueryDto.getContact()!=null,MoveBooking::getContact,moveBookQueryDto.getContact())
            .eq(moveBookQueryDto.getStatus()!=null,MoveBooking::getStatus,moveBookQueryDto.getStatus());
    List<MoveBooking> list = this.list(moveBookingLambdaQueryWrapper);
    if (CollectionUtils.isEmpty(list))return PageInfo.of(new ArrayList<>());
    return PageInfo.of(list);
}

MoveBookingController

@GetMapping("/list")
    public R<PageInfo<MoveBooking>> list(MoveBookQueryDto moveBookQueryDto){
        PageInfo<MoveBooking> pageInfo = moveBookingService.moveBookList(moveBookQueryDto);
        return R.success(pageInfo);
    }

测试

相关文章
|
1天前
|
Java 数据库连接 数据库
spring复习05,spring整合mybatis,声明式事务
这篇文章详细介绍了如何在Spring框架中整合MyBatis以及如何配置声明式事务。主要内容包括:在Maven项目中添加依赖、创建实体类和Mapper接口、配置MyBatis核心配置文件和映射文件、配置数据源、创建sqlSessionFactory和sqlSessionTemplate、实现Mapper接口、配置声明式事务以及测试使用。此外,还解释了声明式事务的传播行为、隔离级别、只读提示和事务超时期间等概念。
spring复习05,spring整合mybatis,声明式事务
|
4天前
|
Java 数据库连接 数据库
SpringBoot 整合jdbc和mybatis
本文详细介绍了如何在SpringBoot项目中整合JDBC与MyBatis,并提供了具体的配置步骤和示例代码。首先,通过创建用户实体类和数据库表来准备基础环境;接着,配置Maven依赖、数据库连接及属性;最后,分别展示了JDBC与MyBatis的集成方法及其基本操作,包括增删查改等功能的实现。适合初学者快速入门。
SpringBoot 整合jdbc和mybatis
|
14天前
|
缓存 前端开发 Java
【Java面试题汇总】Spring,SpringBoot,SpringMVC,Mybatis,JavaWeb篇(2023版)
Soring Boot的起步依赖、启动流程、自动装配、常用的注解、Spring MVC的执行流程、对MVC的理解、RestFull风格、为什么service层要写接口、MyBatis的缓存机制、$和#有什么区别、resultType和resultMap区别、cookie和session的区别是什么?session的工作原理
【Java面试题汇总】Spring,SpringBoot,SpringMVC,Mybatis,JavaWeb篇(2023版)
|
1天前
|
XML Java 关系型数据库
springboot 集成 mybatis-plus 代码生成器
本文介绍了如何在Spring Boot项目中集成MyBatis-Plus代码生成器,包括导入相关依赖坐标、配置快速代码生成器以及自定义代码生成器模板的步骤和代码示例,旨在提高开发效率,快速生成Entity、Mapper、Mapper XML、Service、Controller等代码。
springboot 集成 mybatis-plus 代码生成器
|
1天前
|
SQL XML Java
springboot整合mybatis-plus及mybatis-plus分页插件的使用
这篇文章介绍了如何在Spring Boot项目中整合MyBatis-Plus及其分页插件,包括依赖引入、配置文件编写、SQL表创建、Mapper层、Service层、Controller层的创建,以及分页插件的使用和数据展示HTML页面的编写。
springboot整合mybatis-plus及mybatis-plus分页插件的使用
|
1天前
|
XML Java 数据库连接
springboot中整合mybatis及简单使用
这篇文章介绍了如何在Spring Boot项目中整合MyBatis,包括依赖引入、配置数据源、创建测试表、编写Mapper接口和XML文件、以及创建Service和Controller层的步骤。
springboot中整合mybatis及简单使用
|
15天前
|
Java 数据库连接 数据格式
【Java笔记+踩坑】Spring基础2——IOC,DI注解开发、整合Mybatis,Junit
IOC/DI配置管理DruidDataSource和properties、核心容器的创建、获取bean的方式、spring注解开发、注解开发管理第三方bean、Spring整合Mybatis和Junit
【Java笔记+踩坑】Spring基础2——IOC,DI注解开发、整合Mybatis,Junit
|
19天前
|
前端开发 JavaScript Java
技术分享:使用Spring Boot3.3与MyBatis-Plus联合实现多层次树结构的异步加载策略
在现代Web开发中,处理多层次树形结构数据是一项常见且重要的任务。这些结构广泛应用于分类管理、组织结构、权限管理等场景。为了提升用户体验和系统性能,采用异步加载策略来动态加载树形结构的各个层级变得尤为重要。本文将详细介绍如何使用Spring Boot3.3与MyBatis-Plus联合实现这一功能。
54 2
|
22天前
|
Java 数据库连接 开发者
MyBatis-Plus整合SpringBoot及使用
MyBatis-Plus为MyBatis提供了强大的增强,使得在Spring Boot项目中的数据访问层开发变得更加快捷和简便。通过MyBatis-Plus提供的自动CRUD、灵活的查询构造器和简洁的配置,开发者
34 0
|
SQL Java 数据库
springboot整合pagehelper
在日常工作中怎么分页呢?咱们可以在sql里面拼接limit,但是这样是不是有点low,所以我又访问了一下伟大的百度,又知道了一个插件pagehelper,那么下面介绍一下pagehelper。
174 0
springboot整合pagehelper