欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

mybatis中使用Integer类型的参数判断问题

程序员文章站 2022-04-17 20:11:06
mybatis对传入参数进行判断时,会使用if标签, 一般是判断不为null和'', 如下: name =#{name,jdbcType=VARCHAR}, 1、 String类型是符合的,但是如果是Intege ......

mybatis对传入参数进行判断时,会使用if标签, 一般是判断不为null和'', 如下:

<if test="name != null and 那么 != ''">

    name =#{name,jdbcType=VARCHAR},

</if>


1、 String类型是符合的,但是如果是Integer类型的话,如果变量的值是0,即 num = 0, mybatis在进行 num != '' 的时候会认为  num 的值是空字符串, 即 num == '' 为true。

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


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