CuteJava 在线文档 CuteJava 在线文档
  • 快速开始
  • 后端手册
  • 前端手册
  • 部署项目
常见问题
更新日志
支持项目
  • 快速开始
  • 后端手册
  • 前端手册
  • 部署项目
常见问题
更新日志
支持项目
  • 快速开始

    • 简介
    • 快速了解
    • 快速开始
    • 特别鸣谢
  • 后端手册

    • 权限控制
    • 通用查询
      • 通用查询
      • 参数说明
      • 使用方式
    • 异常处理
    • 定时任务
    • 系统工具
    • 其他杂项
  • 前端手册

    • 菜单路由
    • 自定义主键
    • 多字段排序
    • 隐藏操作按钮
    • 使用数据字典
    • 统一异常处理
    • 系统组件
    • 新版基础组件
    • 新版业务组件
  • 部署项目

    • 常规部署方式
目录

通用查询

# 通用查询

本项目对 MyBatisPlus 的查询进行了封装,现可以通过 @CsMpQuery 注解实现简单的查询

简单查询:等于(默认)、大于等于、小于等于、左模糊、右模糊、中模糊、多字段模糊、NOT_EQUAL 、BETWEEN 、NOT_NULL。

# 参数说明

字段名称 字段描述 默认值
propName 对象的属性名,如果字段名称与实体字段一致,则可以省略 ""
type 查询方式,默认为 EQUAL
blurry 多字段模糊查询,值为实体字段名称 ""

# 使用方式

1、创建一个查询类 QueryCriteria

@Data
public class QueryCriteria {

    // 等于
    @CsMpQuery
    private String a;

    // 左模糊
    @CsMpQuery(type = Query.Type.LEFT_LIKE)
    private String b;

    // 右模糊
    @CsMpQuery(type = Query.Type.RIGHT_LIKE)
    private String c;

    // 大于等于
    @CsMpQuery(type = Query.Type.GREATER_THAN, propName = "createTime")
    private Timestamp startTime;

    // 小于等于
    @CsMpQuery(type = Query.Type.LESS_THAN, propName = "createTime")
    private Timestamp endTime;

    // BETWEEN
    @CsMpQuery(type = Query.Type.BETWEEN)
    private List<Timestamp> startTime;

    // 多字段模糊查询,blurry 为字段名称
    @CsMpQuery(blurry = "a,b,c")
    private String blurry;

    // IN 查询
    @CsMpQuery(type = Query.Type.IN)
    private List<String> d;

    // NOT_EQUAL 不等于
    @CsMpQuery(type = Query.Type.NOT_EQUAL)
    private String g;

    // NOT_NULL 不为空
    @CsMpQuery(type = Query.Type.NOT_NULL)
    private String g;
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43

2、在控制器中使用

public ResponseEntity query(CsPageArgs<QueryCriteria> args){
    return new ResponseEntity(service.queryAll(args), HttpStatus.OK);
}
1
2
3

3、Service 中查询

@Override
public ResponseEntity<CsPageResult<实体>> queryAll(CsPageArgs<QueryCriteria> args){
   QueryWrapper<Object> queryWrapper = CsMpQUtil.build(args.getArgs());
   IPage<实体> page repository.selectByArgs(queryWrapper, args.getPage());
   return CsPageUtil.toPage(page);
}
1
2
3
4
5
6

提示

如果需要添加一个字段查询,只需要在查询类 QueryCriteria 中添加就可以了,可节省大量时间。

源码可以查看 cutejava-framework 模块中的 cn.odboy.framework.mybatisplus.config.CsMpQuery 与 cn.odboy.framework.mybatisplus.core.CsMpQUtil

帮助我们改善此页面! (opens new window)
权限控制
异常处理

← 权限控制 异常处理→

Theme by Vdoing | Copyright © 2017-2025 Odboy的武林秘籍
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式