• jeecg 笔记之 模糊查询


    1、前言

    jeecg 考虑到默认模糊查询的话,会增加系统压力,导致查询慢,本来系统就挺那啥的...

    2、方式一之实体赋值

    实体重新赋值查询,用 * %% * 实现,我们知道 sql 中通常使用 % 去模糊查询的,jeecg 中 datagrid 方法里判断实体属性是否为空,不为空则重新赋值即可。

    至于 是不是用 % ,使用几个 % 根据自己情况选择,比如: "*" + xxx + "*" 、"*%" + xxx + "*"

    3、方式二之cq实现

    将值赋值给 CriteriaQuery 

    复制代码
        @RequestMapping(params = "datagrid")
        public void datagrid(BaseDevice device, HttpServletRequest request, HttpServletResponse response, DataGrid dataGrid) {   
            
            String devicecode = device.getDevicecode();
            String devicename = device.getDevicename();
            String status = device.getStatus();
            
            CriteriaQuery cq = new CriteriaQuery(BaseDevice.class,dataGrid);
            if(StringUtils.isNotEmpty(devicecode)){
                cq.add(Restrictions.sqlRestriction("devicecode like '%" + devicecode + "%'"));
            }
            if(StringUtils.isNotEmpty(devicename)){
                cq.add(Restrictions.sqlRestriction("devicename like '%" + devicename + "%'"));
            }
            if(StringUtils.isNotEmpty(status)){
                cq.add(Restrictions.sqlRestriction("status like '%" + status + "%'"));
            }
            
            this.systemService.getDataGridReturn(cq, true);
            TagUtil.datagrid(response, dataGrid);
        }
    复制代码

    4、其他方式

    https://my.oschina.net/u/2538398/blog/757841

  • 相关阅读:
    消息中间件
    docker 安装elasticSearch6.7.1
    Curl实现ElasticSearch的增删改查
    docker 容器的mysql主从复制
    linux上docker安装centos7.2
    linux安装docker
    调用 CURL 使用正则抓取信息
    linux 一键安装lnmp环境
    laravel框架实现数据的删除和修改
    laravel 实现增 与查
  • 原文地址:https://www.cnblogs.com/Jeely/p/12613842.html
Copyright © 2020-2023  润新知