如果不配置默认查询条件是全匹配,想实现模糊查询需求在查询值的前后加:
*
Jeecg-boot支持不编码通过配置实现 模糊查询、 匹配查询、 范围查询、 不匹配查询 等规则,
但是页面查询字段,需跟后台 Controller 中 Page 的字段对应一致,就可以不需写后台代码自动生成查询条件SQL。
例如:想实现模糊查询需求在查询值的前后加: *
查询规则
1、全匹配查询:
查询数据没有特殊格式,默认为全匹配查询
2、模糊查询:
查询数据格式需加星号:{ * }
- 后模糊匹配: 
张* - 前模糊匹配: 
*张 - 全模糊匹配: 
*张* - 更高级匹配: 
*张*三* 
3、包含查询:
查询数据格式采用逗号分隔:{ , }
  例如:张三,李四   (含义:In('张三','李四'))
4、不匹配查询:
查询数据格式需要加叹号前缀:{ ! }
例如:!张三 (含义:不等于’张三’)
特殊说明:
- 查询不为Null的语法:
!null(大小写没关系); - 查询不为空字符串的方法:
!(只有一个叹号); 
5、范围查询
支持数字,时间的范围查询,针对范围查询页面会生成两个查询控件
- 如果是单一匹配方式,则页面查询控件的 
name, 跟实体字段命名一样 - 如果是范围匹配方式,则页面查询控件需要变成两个分别名 
{*}_begin,{*}_end 
{*}_begin表示查询范围开始值{*}_end表示查询范围结束值
举例:
字段名称 orderDate
查询开始时间 : orderDate_begin
查询结束时间 : orderDate_end
注意部分
- 数值类型不支持此种 
取非查询,可以将数值字段定义为字符串类型的在查询; - 数字类型字段多值查询,需要将字段加上后缀 
_MultiString,其他规则同理; 
- 因为后端的实体字段也需要增加后缀,例如:实体类中为: 
tableType,页面接受参数字段就是tableType_MultiString 
高级值规则
- 小于查询:查询内容值规则:”lt+ 空格 + 内容”;
🌰:输入值:lt 100 - 小于等于查询: 查询内容值规则:”le+ 空格+ 内容”;
🌰:输入值:le 100 - 大于查询:查询内容值规则:”gt+ 空格+ 内容”;
🌰:输入值:gt 100 - 大于等于查询: 查询内容值规则:”ge+ 空格+ 内容”;
🌰:输入值:ge 100 
高级规则暂时发现不能在 integer 类型中使用,加上 _MultiString 虽然不会报错了,但是返回的数据错误。
- 后端小哥和我说虽然你这边不报错并且又返回值,但是他那边报错了。
 
自定义排序
额外传入两个字段即可:
column: 排序依据字段order: 排序方式 [asc|desc] (默认asc)
文章所使用后端框架版本 v2.2.0 (发布日期:2020-05-06)
不知道后续开发团队会不会更新说明文档。
附
- 查询过滤器用法 · Jeecg-boot 开发文档
 - Online报表排序 · Jeecg-boot 开发文档
 - 因为查询过滤器已经重构多次,版本最好选择 
2.2.x以上,1.x版本只有全匹配/模糊查询/包含查询/不匹配查询。