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 ,导致其出现问题。问题解决