分页查询

依赖

<!--mybatis-plus-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
        </dependency>

1.配置分页插件

/**
 * 分页插件
 */
    @Bean
    public PaginationInterceptor paginationInterceptor() {
        return new PaginationInterceptor();
    }

2.Controller中添加分页方法

//分页查询
    //current 当前页
    //limit  每页记录数
    @GetMapping("PagingFindAll/{current}/{limit}")
    public R PagingFindAll(@PathVariable long current,
                           @PathVariable long limit){
        //创建page对象
        Page<Atest01>  atest01Page =new Page<>(current,limit);
        //调用方法实现分页
        //调用方法时,底层封装,把分页所有数据封装到atest01Page对象中
        atest01Service.page(atest01Page,null);
        long total = atest01Page.getTotal();//总记录数
        List<Atest01>  records =atest01Page.getRecords();//数据list集合
        return R.ok().data("total",total).data("rows",records);
    }

3.启动,Swagger中测试成功

在这里插入图片描述
在这里插入图片描述
多条件分页查询
1.创建Atest01Query.java查询对象

@ApiModel(value = "查询对象",description = "查询对象封装")
@Data
public class Atest01Query  implements Serializable {
    @ApiModelProperty(value = "id")
    private Long id;

    @ApiModelProperty(value = "名字,模糊查询")
    private String name;

    @ApiModelProperty(value = "是否逻辑删除")
    private Boolean isDeleted;

    @ApiModelProperty(value = "开始日期")
    private Date begin;

    @ApiModelProperty(value = "结束日期")
    private Date end;
}

2.service层
接口

public interface Atest01Service extends IService<Atest01> {
    void pageQuery(Page<Atest01> pageParam, Atest01Query atest01Query);
}

实现

@Service
public class Atest01ServiceImpl extends ServiceImpl<Atest01Mapper, Atest01> implements Atest01Service {

    @Override
    public void pageQuery(Page<Atest01> page, Atest01Query atest01Query){
        //构建条件
        QueryWrapper<Atest01> wrapper =new QueryWrapper<>();
        //wrapper,多条件组合查询
        //判断条件值是否为空,如果不为空则拼接条件
        String name=atest01Query.getName();
        Long id=atest01Query.getId();
        Boolean isDeleted=atest01Query.getIsDeleted();
        Date begin=atest01Query.getBegin();
        Date end=atest01Query.getEnd();

        if(!StringUtils.isEmpty(name)){
            //构建条件
            wrapper.like("name",name);
        }
        if(!StringUtils.isEmpty(id)){
            //构建条件
            wrapper.eq("id",id);
        }
        if(!StringUtils.isEmpty(isDeleted)){
            //构建条件
            wrapper.eq("is_deleted",isDeleted);
        }
        if(!StringUtils.isEmpty(begin)){
            //构建条件
            wrapper.ge("create_date",begin);
        }
        if(!StringUtils.isEmpty(end)){
            //构建条件
            wrapper.le("create_date",end);
        }

        baseMapper.selectPage(page, wrapper);
    }
}

3.controller层

//条件查询
    @PostMapping("atest01PageCondition/{current}/{limit}")
    public R atest01PageCondition(@PathVariable long current, @PathVariable long limit,
                                  @RequestBody(required = false)  Atest01Query atest01Query){
        //requird=false表示这个值可以没有  @RequestBody必须使用@PostMapping提交方式
        //创建page对象
        Page<Atest01> atest01Page=new Page<>(current,limit);
        //调用方法实现条件查询分页
        atest01Service.pageQuery(atest01Page,atest01Query);
        long total = atest01Page.getTotal();//总记录数
        List<Atest01>  records =atest01Page.getRecords();//数据list集合
        return R.ok().data("total",total).data("rows",records);

    }

测试成功
在这里插入图片描述

展开阅读全文

SpringBoot整合ElasticSearch实现电商高性能搜索引擎

03-20
Elasticsearch 简介 ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。 elasticSearch 的使用场景 1、在海量数据前提下,对数据进行检索。比如:京东,淘宝等电商项目 课程目标: 1. 了解企业级搜索引擎 2. 安装elasticsearch {linux 系统} 3. 安装kibana并利用kibana对Elasticsearch 索引中的数据进行搜索、查看、交互操作 4. 项目实战{ELK} 课程目录: 01 课程介绍 02 elasticsearch 简介 03 elasticsearch 使用场景 04 安装elasticsearch 之前先安装jdk 05 安装elasticsearch 06 测试elasticsearch是否安装成功  07 安装kibana 08 elasticsearch 基本认识 以及添加索引和删除索引 09 elasticsearch 添加查询数据 10 elasticsearch 修改删除数据 11 elasticsearch 有条件的查询 12 词子属性fuzzy查询 13 elasticsearch 过滤使用 14 elasticsearch 排序与页 15 elasticsearch 如何查询指定的字段 16 elasticsearch 高亮显示 17 elasticsearch 聚合 18 elasticsearch mapping 概念 19 elasticsearch 的中文词库 20 elasticsearch 中文词库安装测试 21 elasticsearch 中文词库的使用案例 22 elasticsearch 自定义词库配置 23 安装nginx 配置中文词库 24 测试elasticsearch 自定义中文词库 25 搭建项目父工程 26 搭建项目bean-interface-common 27 搭建search 的service web 项目 28 测试项目是否能与elasticsearch联通 29 创建数据库并搭建首页 30 数据上传功能的实现类完成 31 数据上传控制器完成 32 dubbo 介绍以及安装zookeeper 33 将数据从mysql 上传到elasticsearch 中 34 elasticsearch查询功能析 35 编写业务需求的dsl 语句 36 编写输入参数返回结果集的实体类 37 实现类编写 38 编写实现类中dsl 语句 39 返回集结果转换 40 结果测试 41 测试通过输入查询条件并将数据显示到页面

Windows版YOLOv4目标检测实战:训练自己的数据集

04-26
©️2020 CSDN 皮肤主题: 大白 设计师: CSDN官方博客 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值