mybatis 批量增加 Parameter '__frch_item_0' not found. Available parameters are [list]
當在mybatis用到foreach的時候,會報這個錯誤Parameter '__frch_item_0' not found. Available parameters are [list]會出現的幾種解決方案
例子
?
[sql]?view plaincopy?
?
1.查看parameterType的類型是不是Java.util.List類型,如果是的話,看foreach 的collection屬性是不是list,
? ? 因為 傳遞一個 List 實例或者數組作為參數對象傳給 MyBatis,MyBatis 會自動將它包裝在一個 Map 中,用名稱在作為鍵。List 實例將會以“list” 作為鍵,而數組實例將會以“array”作為鍵?
2.看一下foreach里面的值有沒有傳遞進來?
3.看foreach里面的名稱字段是否寫錯?
4.還有就是我用Mybatis的時候,用MySQL的值插入自動增長值,里面的key我在數據庫中沒有設置自動增長,然后我又用了selectkey,所以也會出現這種情況
--------------------------------------------------------------------
還有一種情況是item的屬性不對,我在使用通用Map的時候,發現此問題。
通用Map的好處是減少了對Bean的書寫,問題是如果數據庫的查詢結果為Null,對應屬性的key也就不存在。
總結
以上是生活随笔為你收集整理的mybatis 批量增加 Parameter '__frch_item_0' not found. Available parameters are [list]的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MairaDB 函数(二)
- 下一篇: Aix 6.1下安装Oracle11g详