查询过滤器用法

  • 查询过滤器用法
  1. QueryWrapper<?> queryWrapper = QueryGenerator.initQueryWrapper(?, req.getParameterMap());

代码示例:

  1. @GetMapping(value = "/list")
  2. public Result<IPage<JeecgDemo>> list(JeecgDemo jeecgDemo, @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
  3. @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
  4. HttpServletRequest req) {
  5. Result<IPage<JeecgDemo>> result = new Result<IPage<JeecgDemo>>();
  6. //调用QueryGenerator的initQueryWrapper
  7. QueryWrapper<JeecgDemo> queryWrapper = QueryGenerator.initQueryWrapper(jeecgDemo, req.getParameterMap());
  8. Page<JeecgDemo> page = new Page<JeecgDemo>(pageNo, pageSize);
  9. IPage<JeecgDemo> pageList = jeecgDemoService.page(page, queryWrapper);
  10. result.setSuccess(true);
  11. result.setResult(pageList);
  12. return result;
  13. }
  • 查询规则 (本规则不适用于高级查询,高级查询有自己对应的查询类型可以选择 )
查询模式用法说明
模糊查询支持左右模糊和全模糊 需要在查询输入框内前或后带或是前后全部带
取非查询在查询输入框前面输入! 则查询该字段不等于输入值的数据(数值类型不支持此种查询,可以将数值字段定义为字符串类型的)
> >= < <=同取非查询 在输入框前面输入对应特殊字符即表示走对应规则查询
in查询若传入的数据带,(逗号) 则表示该查询为in查询
多选字段模糊查询上述4 有一个特例,若某一查询字段前后都带逗号 则会将其视为走这种查询方式 ,该查询方式是将查询条件以逗号分割再遍历数组 将每个元素作like查询 用or拼接,例如 现在name传入值 ,a,b,c, 那么结果sql就是 name like '%a%' or name like '%b%' or name like '%c%'