解決Parameter '__frch_item_0' not found. Available parameters 問題

lonecloud發表於2018-11-26

  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 ,導致其出現問題。問題解決

 

相關文章