返回顶部
首页 > 资讯 > 精选 >mybatis如何传入null值
  • 394
分享到

mybatis如何传入null值

2023-06-29 11:06:47 394人浏览 泡泡鱼
摘要

这篇文章给大家分享的是有关mybatis如何传入null值的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。mybatis 传入null值解决前端传入两个值,如果其中一个为null时,很多时候我们都很困惑,明明传入的

这篇文章给大家分享的是有关mybatis如何传入null值的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

mybatis 传入null值解决

前端传入两个值,如果其中一个为null时,很多时候我们都很困惑,明明传入的是null,为啥mybatis 的xml文件中的if条件判断无效?

public String getPersonInfo(@PathParam("Name") String Name, @PathParam("IDCard") String IDCard)

dao层

public List<Map> getPersonInfo(@Param("name") String name, @Param("idcard") String idcard);

xml文件内容

<if test="name == null or name == '0'.toString()">     <![CDATA[ and (b.identity_id = #{idcard,javaType=String,jdbcType=VARCHAR})    group by name,id_card,birthTime,sex  ]]> </if>

每次执行都是失败的,网上很多都说要在dao层添加@param注解和xml文件内容中要加入jdbcType类型就能解决,最后还是没解决

其实还有一个点忽略了,就是传入时的null值其实是个字符串null,根本就不是null,它是个字符串null

        if (Name == null || "null".equalsIgnoreCase(Name)) {            Name = null;        }        if (IDCard == null || "null".equalsIgnoreCase(IDCard)) {            IDCard = null;        }

问题解决!

mybatis 注入老是为null

今天遇到个很弱智的问题,以此记录!时刻提醒自己

    public int delExhibion(List<String> ids){        Integer result = null;        ExhibitionManager exhibitionManager = new ExhibitionManager();        for (String id : ids){            exhibitionManager.setId(id);            exhibitionManager.setDelFlag("1");             result += exhibitionManagerMapper.delete(id);        }        return result;    }

发现老是执行 delete 的时候 ,老是报 空指针异常

mybatis如何传入null值

然后尝试使用:  @Param  给参数加上命令     

int delete(@Param("id") String id);

结果还是不行,

然后在尝试使用:对象传参,这样总该注入进去了吧 

int delete(Object dx);

结果还是不行,

然后在尝试使用:Mybatis 单个参数动态语句引用:

是当我们的参数为String时,在sql语句中#{id} 会去我们传进来的参数调getId()方法获取参数,很明显,String没有对应的方法,所以报错了,那我们这里要如何引用id呢,需要采用下面的写法:

<delete id="delete" parameterType="java.lang.String" >           SELECT * FROM table         <where>                     <if test="_parameter != null">                              AND id= #{id}                     </if>           </where>  </select>

单Mybatis传参为单个参数时,在sql语句中需要使用  _parameter 来引用这个参数

结果还是不行。  

终于过了一会儿,看代码时突然顿悟

    public int delExhibion(List<String> ids){        Integer result = null;        for (String id : ids){             result += exhibitionManagerMapper.delete(id);        }        return result;    }

Integer  result  我给他设置默认值  为null,   并且还让  reuslt  这个对象   result +=   

加等于在执行数据库操作返回结果时 用 result 去接收。 这不就一定是空指针了吗。

我给 Integer result = 0;  设置个默认值为0   那也不会出现这种情况!

或者 result =   给result  初始化赋值     也不会报  空指针异常!  不过这样做在我的业务中是不对的哦。  只是不会报错. 但是获取不到我想要的执行成功条数

Integer result = null;result =  exhibitionManagerMapper.delete(id);

真的是被自己气到了。以此记录!时刻提醒自己   

 public int delExhibion(List<String> ids){        Integer result = 0;        for (String id : ids){             result += exhibitionManagerMapper.delete(id);        }        return result;    }

感谢各位的阅读!关于“mybatis如何传入null值”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

--结束END--

本文标题: mybatis如何传入null值

本文链接: https://lsjlt.com/news/324405.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • mybatis如何传入null值
    这篇文章给大家分享的是有关mybatis如何传入null值的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。mybatis 传入null值解决前端传入两个值,如果其中一个为null时,很多时候我们都很困惑,明明传入的...
    99+
    2023-06-29
  • mybatis 传入null值的解决方案
    目录mybatis 传入null值解决dao层xml文件内容mybatis 注入老是为null终于过了一会儿,看代码时突然顿悟mybatis 传入null值解决 前端传入两个值,如果...
    99+
    2024-04-02
  • 关于mybatis传入参数一直为null的问题
    目录mybatis传入参数一直为nullmybatis字段为null的解决先讲一讲sql语句和ResultMap的顺序实体类UserInfoUserMapper.xml错误代码正确写...
    99+
    2024-04-02
  • java如何判断空值和null值
    在Java中,可以使用以下方法来判断一个值是空值还是null值:1. 判断字符串是否为空值或者null值:```javaString...
    99+
    2023-08-24
    java
  • MySQL中如何处理NULL值
    在MySQL中,可以使用以下方式处理NULL值: 使用IS NULL和IS NOT NULL操作符来判断NULL值: SELEC...
    99+
    2024-03-06
    MySQL
  • mybatis如何实现in传入数组查询
    目录mybatis实现in语句传入数组1.数据样式2.实现方法3.sql语句mybatis数组传递注意事项1.直接传递数组2.将数字放入map中传递mybatis实现in语句传入数组...
    99+
    2024-04-02
  • mybatis plus如何更新字段为null
    本篇内容主要讲解“mybatis plus如何更新字段为null”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“mybatis plus如何更新字段为null”吧!mybati...
    99+
    2023-06-29
  • MyBatis中怎么处理数据库的NULL值
    在MyBatis中处理数据库的NULL值有多种方法,可以通过if、choose、when等标签来处理。 使用if标签处理NULL值...
    99+
    2024-03-07
    MyBatis 数据库
  • 如何在es中查询null值
    文章目录 1、背景2、需求3、准备数据3.1 创建mapping3.2 插入数据 4、查询 `name`字段为null的数据5、查询`address`不存在或值直接为null的数据6、参考...
    99+
    2023-09-16
    elasticsearch java null值查询 es bool exists
  • php数组如何去掉null值
    这篇文章主要讲解了“php数组如何去掉null值”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“php数组如何去掉null值”吧!方法:1、循环遍历数组,语法“foreach($arr as ...
    99+
    2023-06-30
  • 如何在mybatisPlus中更新null 值
    如何在mybatisPlus中更新null 值?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。发现mybatisPlus会更新对象属性为null的值,与field-strat...
    99+
    2023-06-06
  • 如何处理MySQL中的NULL值
    在MySQL中,可以使用以下方法处理NULL值: 检查NULL值:使用IS NULL或IS NOT NULL操作符来检查NULL值...
    99+
    2024-04-09
    MySQL
  • Mybatis使用update更新值为null时不生效
    该文章纯属记录使用过程中遇到的问题更新null值没有生效的问题解决办法,内容较为简单。 1.出现的问题 前端修改数据时把属性内容删除然后进行保存,默认传的null,后端更新时属性值为null,然后调用updateById进行更新时发现该属性...
    99+
    2023-09-02
    mybatis java mysql
  • 在 MySQL 中将 NULL 值插入 INT 列?
    您可以使用条件将 NULL 值插入到 int 列中,即该列不得具有 NOT NULL 约束。语法如下。INSERT INTO yourTableName(yourColumnName) values(NULL);为了理解上面的语法,让我们首...
    99+
    2023-10-22
  • 在SQL中该如何处理NULL值
    在日常使用数据库时,你在意过NULL值么? 其实,NULL值在数据库中是一个很特殊且有趣的存在,下面我们一起来看看吧; 小伙伴想精准查找自己想看的MySQL文章?喏 → M...
    99+
    2024-04-02
  • java如何赋值给Null的对象
    在Java中,可以使用关键字"null"将一个对象赋值为null。例如:```javaObject obj = null;```在上...
    99+
    2023-08-24
    java
  • 如何理解vue父子传值,兄弟传值,子父传值
    本篇内容主要讲解“如何理解vue父子传值,兄弟传值,子父传值”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何理解vue父子传值,兄弟传值,子父传值”吧!一、父组件向子组件传值1.父组件.vue...
    99+
    2023-06-25
  • mybatis-plus使用this.baseMapper.update和updateById更新null值不生效
    mybatis-plus 在 serviceImpl 层可以直接使用 this.baseMapper.update 和 updateById , 如果更新的字段值是null,这时候需更新为 null ...
    99+
    2023-09-08
    mybatis java mysql
  • Mybatis插入语句默认值不生效如何解决
    今天小编给大家分享一下Mybatis插入语句默认值不生效如何解决的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。Mybatis...
    99+
    2023-07-02
  • Mybatis 如何传入字符串参数,分割并遍历
    目录如何传入字符串参数,分割并遍历如前台传入字符串参数 正确写为如下Mybatis 传入分割字符串做参数解决如何传入字符串参数,分割并遍历 如前台传入字符串参数&...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作