mybatis参数String与Integer类型的判断方式

 更新时间:2022年03月14日 10:04:46   作者:bozi_list  
这篇文章主要介绍了mybatis参数String与Integer类型的判断方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

String与Integer类型的判断

mybatis写update时,正常是set了值才会进行update操作

我们一般是这样写

<if test="sampleBatchNo != null and sampleBatchNo != ''">
SAMPLE_BATCH_NO =#{sampleBatchNo,jdbcType=VARCHAR},
</if>

1、 String类型是符合的,但是如果是Integer类型的话,mybatis会将i==0的值也认定为空字符串。

所以如果是Integer类型只需要判断!= null即可

2、如果String类型需要判断不等于0,则需要写sampleBatchNo != '0'.toString(),否则会报错。 

使用<if>标签判断Integer类型的坑

之前只知道如果是Integer类型,判断是否传参的时候判空就好,因为0会被认为和空字符''相等。

没想到还有另外的问题

<if test="req.type != null and req.type = 1">
</if>

注意上面的第二个条件使用的单个等号

此时不管你req.type传啥值(0啊,null啊,负数啊),甚至是不传这个属性,都会符合条件

<if test="req.type != null and req.type == 1">              
</if>

然后我改成==之后,一切恢复正常。

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

相关文章

  • 详解如何获取java中类的所有对象实例

    详解如何获取java中类的所有对象实例

    如何在运行时获取一个Java类的所有对象实例呢,本文给大家介绍一种底层实现的方式,基于jvmti,代码用C++实现,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-10-10
  • MyBatis中useGenerateKeys的使用解析

    MyBatis中useGenerateKeys的使用解析

    这篇文章主要介绍了MyBatis中useGenerateKeys的使用,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • SpringBoot使用Jsp的示例代码

    SpringBoot使用Jsp的示例代码

    这篇文章主要介绍了SpringBoot使用Jsp的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-08-08
  • Spring使用Redis限制用户登录失败的次数及暂时锁定用户登录权限功能

    Spring使用Redis限制用户登录失败的次数及暂时锁定用户登录权限功能

    这篇文章主要介绍了Spring使用Redis限制用户登录失败的次数及暂时锁定用户登录权限功能,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2024-02-02
  • 如何理解Java线程池及其使用方法

    如何理解Java线程池及其使用方法

    线程池是首先创建一些线程,它们的集合称为线程池。使用线程池可以提高性能,它在系统启动时创建大量空闲的线程,程序将一个任务传给线程池,它就会启动一条线程来执行这个任务,执行结束以后,该线程并不会死亡,而是再次返回线程池中成为空闲状态,等待执行下一个任务
    2021-06-06
  • maven打包成第三方jar包且把pom依赖包打入进来的方法

    maven打包成第三方jar包且把pom依赖包打入进来的方法

    这篇文章主要介绍了maven打包成第三方jar包且把pom依赖包打入进来的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-11-11
  • Java 格式化输出JSON字符串的2种实现操作

    Java 格式化输出JSON字符串的2种实现操作

    这篇文章主要介绍了Java 格式化输出JSON字符串的2种实现操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-10-10
  • Spring Data JPA 简单查询--方法定义规则(详解)

    Spring Data JPA 简单查询--方法定义规则(详解)

    下面小编就为大家带来一篇Spring Data JPA 简单查询--方法定义规则(详解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04
  • Java线程池如何实现精准控制每秒API请求

    Java线程池如何实现精准控制每秒API请求

    这篇文章主要介绍了Java线程池如何实现精准控制每秒API请求问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-08-08
  • java中Map遍历的四种方式总结

    java中Map遍历的四种方式总结

    Map集合遍历日常开发最常使用,下面这篇文章主要给大家总结介绍了关于java中Map遍历的四种方式,文中通过实例代码介绍的非常详细,对大家学习或者使用java具有一定的参考学习价值,需要的朋友可以参考下
    2023-03-03

最新评论