java.lang.NumberFormatException: For input string: “[]“ 或 ““ 解决方案

java.lang.NumberFormatException: For input string: "" 或 "[]" 解决方案

异常原因

引起异常的主要原因如下:

  1. 传参字段和映射字段不一致
  2. 传参类型和映射类型不一致
  3. 时间类型转换时间戳长度不一致
  4. 参数长度和数据库不一致
  5. 没有判空!!!

List<?> 判空问题导致

这里使用参数 relationIdList 作为示例,参数类型为 List

<if test="relationIdList != null and relationIdList.size() > 0">
    and relation_id in
    <foreach collection="relationIdList" item="item" open="(" close=")" separator=",">
        #{item}
    </foreach>
</if>

注意使用 List<?> 作为Mybatis的查询条件时,不光需要判空,还需要判断一下长度。java.lang.NumberFormatException: For input string: “[]”
这个异常就是因为没有判断List数组的长度,结果给SQL传入一个空数组,报错。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值