分页中遇到的一个传值问题

2023-05-16

文章目录

  • 前言
  • 一、传入Integer值参数
  • 二、传入String值参数


前言

目的:在前端传入一个参数对所选的结果进行分页过滤,这应该是非常常见的一个需求吧,但是如何传Integer值使用mybatis-plus却无法被解析,认为参数为空,以下是一个用例说明。

下面案例可供参考

一、传入Integer值参数

1、请求传参

{
  "keyword": "",
  "metricName": "",
  "pageNo": 1,
  "pageSize": 10,
  "processTag": 0
}

mybatis-plus后端SQL解析:

JsqlParserCountOptimize sql=SELECT
       	...
        FROM t_alarm_history
        WHERE 1
       
        order by create_time desc
==>  Preparing: SELECT COUNT(1) FROM t_alarm_history WHERE 1 
==> Parameters: 
<==    Columns: COUNT(1)
<==        Row: 170

我的mapper解析if判断如下:

 <select id="queryPage" resultType="com.x.AlarmHistoryDTO"
            parameterType="com.x.AlarmHistoryQueryDTO">
        SELECT
        *
        FROM t_alarm_history
        WHERE 1
        <if test="queryDTO.metricName != null and queryDTO.metricName !='' ">
            AND metric_name = #{queryDTO.metricName}
        </if>
        <if test="queryDTO.processTag != null and queryDTO.processTag !='' ">
            AND process_tag = #{queryDTO.processTag}
        </if>
        <if test="queryDTO.keyword != null and queryDTO.keyword.trim() != '' ">
            AND ( date_time LIKE #{queryDTO.keyword} OR dimensions LIKE #{queryDTO.keyword} )
        </if>
        order by create_time desc
    </select>

看起来mapper没有什么问题,但是在传入processTag=0的情况下无法被解析到,遂尝试使用String类型。

二、传入String值参数

  1. 请求参数
{
  "keyword": "",
  "metricName": "",
  "pageNo": 0,
  "pageSize": 0,
  "processTag": "0"
}
  1. 解析后的SQL如下:
JsqlParserCountOptimize sql=SELECT
		。。。
        FROM t_alarm_history
        WHERE 1
            AND process_tag = ?
        order by create_time desc
==>  Preparing: SELECT COUNT(1) FROM t_alarm_history WHERE 1 AND process_tag = ? 
==> Parameters: 0(String)
<==    Columns: COUNT(1)
<==        Row: 1

可以看到此时SQL的入参被正确解析,而我无非是更改了对应的传参类型,既

private Integer processTag;  =》 private String processTag;

如果你知道什么原因,欢迎留言,Thanks♪(・ω・)ノ

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

分页中遇到的一个传值问题 的相关文章

  • Spring创建对象初始化bean的时机分为两种形式:

    import org junit Test import org springframework context ApplicationContext import org springframework context support C
  • 页面动态数据的滚动效果——jquery滚动组件(vticker.js)

    lt script language 61 34 javascript 34 src 61 34 lirms Test jquery 1 4 2 js 34 gt lt script gt lt script language 61 34
  • MySQL 查询结果以百分比显示

    找了一些资料 xff0c 然后我是用到了MySQL字符串处理中的两个函数concat 和left 1 span style color ff0000 CONCAT span str1 str2 返回来自于参数连结的字符串 如果任何参数是 N
  • rpm包安装过程中依赖问题“libc.so.6 is needed by XXX”解决方法

    转自 xff1a http raksmart idcspy com 781 rpm包安装过程中依赖问题 libc so 6 is needed by XXX 解决方法 与本教程高度相关文章 xff08 读完应该可以解决你的问题 xff09
  • 艺博: linux命令大宝典系列之mkdir创建目录

    在成长的过程中 人总要经历一些痛苦和挫折才能更加成熟与坚强 目录 mkdir是什么mkdir的语法mkdir的选项含义mkdir的实例1 使用mkdir命令创建一个dir1目录 默认权限775 2 使用mkdir m命令新建一个dir2目录
  • linux命令xrandr修改桌面分辨率

    xrandr临时修改分辨率 方法一 打开终端xrandr Screen 0 minimum 8 x 8 current 1366 x 768 maximum 32767 x 32767 eDP1 connected primary 1366
  • Python 教你训练一个98%准确率的微博抑郁文本分类模型(含数据)

    Paddle是一个比较高级的深度学习开发框架 xff0c 其内置了许多方便的计算单元可供使用 xff0c 我们之前写过PaddleHub相关的文章 xff1a 1 Python 识别文本情感就这么简单 2 比PS还好用 xff01 Pyth
  • 记一次神奇的时间转换问题(SheetJS)

    最近在写一个功能 xff0c 使用SheetJS读取Excel表格 xff0c 在读取日期的时候发现了一个隐藏很深的坑 xff0c 特此记录一下 SheetJS读取Excel文件时 xff0c 可指定参数 cellDates true xf
  • 通信常识

    bsc指的是基站控制器 xff08 Base Station Controller xff09 由一下模块组成 xff1a AM CM模块 xff1a 话路交换和信息交换的中心 BM模块 xff1a 完成呼叫处理 信令处理 无线资源管理 无
  • python解析基于xml格式的日志文件

    大家中午好 xff0c 由于过年一直还没回到状态 xff0c 好久没分享一波小知识了 xff0c 今天 xff0c 继续给大家分享一波python解析日志的小脚本 首先 xff0c 同样的先看看日志是个啥样 都是xml格式的 xff0c 是
  • 如何在无显示屏的情况下调试树莓派

    一 准备 1 树莓派 xff1b 2 SD卡 读卡器 网线 xff1b 3 系统镜像下载链接 xff1b 4 软件 xff1a SD Card Formatter下载链接 xff1b balenaEtcher下载链接 xff1b VNC V
  • VNC怎么和宿主机共享粘贴板

    VNC怎么和宿主机共享粘贴板 假设目标主机是linux xff0c 终端主机是windows xff08 就是在windows上使用VNC登陆linux xff09 在linux中执行vncconfig nowin amp 在linux选中
  • 系统调用,进程切换

    模式切换 不等同于 进程上下文切换 当进程调用系统调用或者发生中断时 xff0c CPU从用户模式 xff08 用户态 xff09 切换成内核模式 xff08 内核态 xff09 xff0c 此时 xff0c 无论是系统调用程序还是中断服务
  • brew换源

    bin zsh c 34 curl fsSL https gitee com cunkai HomebrewCN raw master Homebrew sh 34 mac安装homebrew失败怎么办 xff1f 金牛肖马的回答 知乎 h
  • 2022年书单

    2022年书单 纸质书 类别序号书名进度社会科学0 从零开始的女性主义 x1f44c 社会科学1 如何抑制女性写作 x1f44c 社会科学2 父权制与资本主义 社会科学3 下流社会 x1f44c 社会科学4 低欲望社会 x1f44c 社会科
  • 书店漫游记录

    目录 北京 上海 杭州 天津 南京 青岛 深圳 香港 北京 万圣书园 豆瓣书店 野草书店 三联韬奋书店 xff08 三里屯 xff09 三联韬奋书店 xff08 美术馆 xff09 Pageone xff08 北京坊 xff09 Pageo
  • C++ std::string 不可初始化为NULL及基本用法

    偶然看到一个问题 xff0c 顺便总结一下std string C 43 43 basic string S construct null not valid stackoverflow例子 std string 字符串不可以初始化为NUL
  • 通过查看端口状态查看mongodb是否已经启动

    LINUX环境下 xff0c 可以通过查看端口27017的状态查看mongod是否已经启动 netstat lanp span class hljs string grep 34 span span class hljs number 27
  • linux & windows C++开发差异

    新手注意事项 1 文件与目录的大小写以及路径分隔符的差别 windows下不区分大小写 xff0c 路径分隔符一般使用 xff1b linux下区分大小写 xff0c 路径分隔符使用 2 itoa 函数在linux下并不存在 所以使用类似s
  • 深度学习结合SLAM的研究思路/成果整理之(一)使用深度学习方法替换SLAM中的模块

    整理了部分近两年深度学习结合SLAM的一些研究成果 xff08 参考知乎帖子https www zhihu com question 66006923 和泡泡机器人公众号 xff0c 附上论文链接和已找到的源代码 数据集链接 xff0c 大

随机推荐

  • 深度学习与自动驾驶领域的数据集(KITTI,Oxford,Cityscape,Comma.ai,BDDV,TORCS,Udacity,GTA,CARLA,Carcraft)

    http blog csdn net solomon1558 article details 70173223 Torontocity HCI middlebury caltech 行人检测数据集 ISPRS航拍数据集 mot challe
  • 又一遍……ORB_SLAM2+ZED相机(SDK2.2.1)+CUDA9.0+ROS Kinetic 安装测试 some tips

    很久没碰过ORB SLAM2了 xff0c 今天有需要 xff0c 再来试一遍 xff5e ORB SLAM2的github链接 1 安装ORB SLAM2的依赖库 按照链接一步一步来就可以 eigen直接用命令安装就可以 sudo apt
  • MacOS设置终端代理

    前言 国内的开发者或多或少都会因为网络而烦恼 xff0c 因为一些特殊原因有时候网络不好的时候需要使用代理才能完成对应的操作 原来我一直都是使用斐讯路由器然后刷了梅林的固件 xff0c 直接在路由器层面设置转发代理 xff0c 把一些国内网
  • Linux SIGPIPE信号产生原因与解决方法

    TCP 四次握手 产生SIGPIPE的原因 SIGPIPE信号产生的原因 xff1a 简单来说 xff0c 就是客户端程序向服务器端程序发送了消息 xff0c 然后关闭客户端 xff0c 服务器端返回消息的时候就会收到内核给的SIGPIPE
  • Homebrew最新安装--解决安装超时的问题

    更新 2021 1 20 可以直接用下边的脚本进行安装 bin zsh c span class token string 34 span class token variable span class token variable spa
  • TIDB使用时的注意点笔记

    场景 xff1a 虽然TiDB号称完全兼容MySQL 5 7 协议 MySQL 5 7 常用的功能及语法 xff0c 但是其与MySQL数据库仍然存在一些差异 xff0c 可能会导致下游TiDB环境故障 以下是我们使用TiDB时需要重点关注
  • SpringBoot结合MyBatis-Plus快速CRUD笔记

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 文章目录 前言一 DTO amp DO二 示例1 定义Controller2 定义Service和实现3 定义Mapper4 前端访问测试
  • Java最佳实践笔记

    一 常量定义最佳实践 span class token keyword public span span class token keyword final span span class token keyword class span
  • 聊聊JavaSPI

    文章目录 前言一 SPI 示例二 SPI原理与双亲委派机制1 MySQL Driver2 DataX 插件的热插拔也是破坏双亲委派的一种3 Tomcat类加载同样是破坏了双亲委托 总结参考文章 前言 SPI 全称为 Service Prov
  • 实时平台开发笔记

    文章目录 一 背景二 功能模块划分1 作业台主要功能任务生命周期 2 任务列表主要功能 3 项目管理4 模板管理5 UDF管理 三 问题解决1 kerberos认证问题2 分布式锁解决Job名称冲突问题3 自定义线程池用以监控线程运行情况4
  • 二叉树快速拾遗笔记

    文章目录 前言二叉树前中后序遍历反转二叉树二叉树最大最小深度对称二叉树判断是否是平衡二叉树构造最大二叉树前序遍历打印二叉树二叉树层次遍历二叉树中和为某一值的路径总结 前言 二叉树基础内容拾遗 xff0c 使用递归解题三部曲 xff1a 找整
  • 链表拾遗笔记

    文章目录 1 反转单链表2 打印单链表3 O 1 删除指定节点4 双指针法求求链表倒数第k个节点5 判断链表是不是有环6 合并两个单链表7 删除链表中的重复节点7 实现一个单链表总结 提示 xff1a 以下是本篇文章正文内容 xff0c 下
  • 经典的排序算法拾遗笔记

    文章目录 选择排序插入排序冒泡排序快速排序二分查找交换两个位置的元素 总结 各种排序算法复杂度总结如下 xff1a 选择排序 分析 xff1a span class token comment 选择排序 4 3 5 1 4 3 5 1 le
  • BGP基本配置与总结

    使用BGP路由协议的意义是将自治系统中的路由通告到外部 xff0c 而自治系统内使用的是IGP路由 xff0c 这就是为什么内部BGP管理距离这么高 xff0c 而外部BGP管理距离这么低的原因了 1 建立BGP邻居的前提 xff1a 在B
  • Flink常见报错持续更新

    Flink 1 10 1 Job因为没有可用的任务slot而失败 2021 06 24 12 50 36 433 INFO org apache flink runtime executiongraph ExecutionGraph Job
  • IDEA一劳永逸设置默认maven

    前言 每次发现新建项目的时候maven设置便自动重置是不是很恼火 xff0c 别急这里记录下一劳永逸的办法 提示 xff1a 以下是本篇文章正文内容 xff0c 下面案例可供参考 一 设置 示例 xff1a IntelliJ IDEA 20
  • 远程debug docker中应用

    前言 最近在研究kylin相关的内容 xff0c 采用官方提供的docker化一键部署的方式来进行 xff0c 作为远程服务本地debug的原理是相通的 xff0c 这里记录下来以便参考 提示 xff1a 以下是本篇文章正文内容 xff0c
  • Kylin接入外部Jdbc Mysql数据源

    前言 Kylin目前不仅仅支持Hive作为数据源构建cube xff0c 也可以支持使用外部jdbc作为数据源进行构建 xff0c 比如使用MySQL数据源的时候会让我们下载sqoop安装包 xff0c 本质上是使用sqoop全量同步我们要
  • SpringBoot有关数组对象转JSON

    文章目录 前言一 数据的插入二 查询数据1 插入数据2 查询数据 总结 前言 比如 xff0c 有个List lt AlarmInfo gt 对象需要存储到mysql中 xff0c 我们可以存储为varchar类型 xff0c 也可以存储为
  • 分页中遇到的一个传值问题

    文章目录 前言一 传入Integer值参数二 传入String值参数 前言 目的 xff1a 在前端传入一个参数对所选的结果进行分页过滤 xff0c 这应该是非常常见的一个需求吧 xff0c 但是如何传Integer值使用mybatis p