解决Parameter '__frch_item_0' not found. Available parameters 问题

  1. 问题描述:

    出现如下问题,执行报错信息

Caused by: org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.binding.BindingException: Parameter '__frch_item_0' not found. Available parameters are [list, param1]
	at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:75) ~[mybatis-spring-1.2.2.jar:1.2.2]
	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:371) ~[mybatis-spring-1.2.2.jar:1.2.2]
	at com.sun.proxy.$Proxy21.insert(Unknown Source) ~[na:na]
	at org.mybatis.spring.SqlSessionTemplate.insert(SqlSessionTemplate.java:240) ~[mybatis-spring-1.2.2.jar:1.2.2]
	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:51) ~[mybatis-3.2.8.jar:3.2.8]
	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:52) ~[mybatis-3.2.8.jar:3.2.8]
	at com.sun.proxy.$Proxy36.bashInsert(Unknown Source) ~[na:na]
	at 

  2. 查询问题

    1. 检查报错方法体内,是否采用了@Param注解import org.apache.ibatis.annotations.Param;

    

    int bashInsert(@Param("list") List<Demo> list);

  

    2. 检查在<foreach>标签中的collection属性中是否与list一致

    

    <foreach collection="winReportMonthDpds" item="item" separator=",">

    3. 检查forEach中的item中所修饰的Demo的字段是否进行改变,也就是这是否是你之前编写的代码,但是你更新了po类中的update_time字段,但是在你的mapper中foreach的时候并没有进行修改

    3. 解决问题

    1. 进过查看,发现由第三个问题导致,由于之前修改了PO类中的update_time改为了updated_time ,导致其出现问题。问题解决

 

posted @ 2018-11-26 16:29  lonecloud  阅读(15171)  评论(0编辑  收藏  举报
我的博客即将同步至 OSCHINA 社区,这是我的 OSCHINA ID:lonecloud,邀请大家一同入驻:https://www.oschina.net/sharing-plan/apply