Mybatis对于int类型的参数问题及解决过程

 更新时间:2026年06月01日 11:48:00   作者:Shelly0307  
Mybatis参数传递与数据库查询中int类型问题分析及解决,探讨int类型在Mybatis中与数据库查询时的误判问题因及解决办法,并提出优化建议

一、Mybatis对于int类型的参数值为0的判断给空

状态字段statusFlag 使用的是int类型,对应的java 类型使用的是Integer,页面上作为查询条件,有个数值为0,这时候传递到后台进行查询的时候是筛选不出数据。

后台Mybatis的判断为

<if test="statusFlag != null and statusFlag != '' ">
            AND STATUS_FLAG = #{statusFlag}
</if>

问题原因

当statusFlag 的值为0的时候,因为其数据类型为Integer,所以这个判断是为false的,就是说int类型的判断,Mybatis是认定0为''的,所以为false

解决办法

是去掉空串的判断

<if test="statusFlag != null">
    AND STATUS_FLAG = #{statusFlag}
</if>

二、查询MySql的int类型字段默认返回0

问题原因

当数据库中这个字段没有值时,查询结果返回的值默认为 0

解决办法

修改实体类字段的数据类型,将 long 修改为 Long,即修改为包装类

private Long cId;

包装类:

long -> Long, int -> Integer, short -> Short, byte -> Byte

三、建议

像这种码值操作最好还是使用字符串类型数据比较好。

四、总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Jmeter BlazeMeter实现web录制过程

    Jmeter BlazeMeter实现web录制过程

    BlazeMeter是一款与Apache JMeter兼容的chrome插件,采用BlazeMeter可以方便的进行流量录制和脚本生成,作为接口测试脚本编写的一个基础,这篇文章主要介绍了Jmeter BlazeMeter实现web录制,需要的朋友可以参考下
    2021-12-12
  • Java判断字符串为空、字符串是否为数字

    Java判断字符串为空、字符串是否为数字

    这篇文章主要介绍了Java判断字符串为空、字符串是否为数字,其中数字的判断介绍了3种方法,需要的朋友可以参考下
    2014-06-06
  • Java实现导出word表格的示例详解

    Java实现导出word表格的示例详解

    这篇文章主要为大家详细介绍了如何利用Java语言导出word表格功能,文中的示例代码讲解详细,具有一定的借鉴价值,需要的小伙伴可以参考一下
    2022-12-12
  • Java解决删除字符使频率相同问题

    Java解决删除字符使频率相同问题

    给你一个下标从0开始的字符串 word ,字符串只包含小写英文字母,你需要选择一个下标并删除下标处的字符,使得word中剩余每个字母出现频率相同,本文给大家介绍了Java解决删除字符使频率相同问题,需要的朋友可以参考下
    2024-02-02
  • Java开发者就业需要掌握的9大专业技能

    Java开发者就业需要掌握的9大专业技能

    这篇文章主要为大家详细介绍了java就业前需要掌握的专业技能,感兴趣的小伙伴们可以参考一下
    2016-09-09
  • 详解通过JDBC进行简单的增删改查(以MySQL为例)

    详解通过JDBC进行简单的增删改查(以MySQL为例)

    JDBC是用于执行SQL语句的一类Java API,通过JDBC使得我们可以直接使用Java编程来对关系数据库进行操作。通过封装,可以使开发人员使用纯Java API完成SQL的执行。
    2017-01-01
  • MyBatis多表查询和注解开发案例详解

    MyBatis多表查询和注解开发案例详解

    这篇文章主要介绍了MyBatis多表查询和注解开发,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-05-05
  • Java实现二分查找树及其相关操作

    Java实现二分查找树及其相关操作

    二分查找树是一种有组织的二叉树。我们可以通过链接节点表示这样一棵树,二分查找树(Binary Search Tree)的基本操作有搜索、求最大值、求最小值、求前驱、求后继、插入及删除,对java二分查找树相关知识感兴趣的朋友一起看看吧
    2021-07-07
  • Java+EasyExcel实现单个接口导出多个Excel的示例详解

    Java+EasyExcel实现单个接口导出多个Excel的示例详解

    在日常开发中,我们经常会遇到 Excel 导出的需求,大多是单个接口导出单个 Excel 文件,今天就基于 Spring Boot + EasyExcel分享一种简单、通用、可直接落地的实现方案,全程附完整代码,新手也能快速上手
    2026-04-04
  • JAVA中通过自定义注解进行数据验证的方法

    JAVA中通过自定义注解进行数据验证的方法

    java 自定义注解验证可自己添加所需要的注解,下面这篇文章主要给大家介绍了关于JAVA中通过自定义注解进行数据验证的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧
    2018-08-08

最新评论