mybatis绑定异常?

mybatis中的部分代码:

<insert id="piLiang" parameter="java.util.list">
insert into salaryliushui
<foreach item="item" collection="list" open="(" separator="," close=")">

 <trim preifx="(" suffix=")" suffixOverrides=",">
   <if test="number != null and number != '' ">number,</if>

</foreach>
</insert>

报错:org.apache.ibaits.binging.BingingException:Parameter 'number'
not found;Avaliable parameters are [collection,list];

后来我想了下, 传入的list中封装了实体类,实体类中有number属性,不晓得为啥报错??

阅读 2.1k
2 个回答

用你定义的 item="item" ,item去.你的属性
例如#{item.number}

Avaliable parameters are [collection,list];就是说你只有list和collection这两个参数可以用,这两个其实是一个东西,都是代表你传进来了List。

对于List来说,你要获取某条数据的number,那你肯定不能用number,list.number。而是用 list.get(0).number这样的方式。

对于xml中,就是类似:

    <foreach item="item" collection="list" separator="," open="(" close=")" index="">
      #{item.number, jdbcType=NUMERIC}
    </foreach>
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题