日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

mybatis 批量增加 Parameter '__frch_item_0' not found. Available parameters are [list]

發布時間:2025/3/21 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 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
  • ??<insert?id="insertBatchPicAttachment"??parameterType="java.util.List">??
  • ???????insert?into?pic_attachment???
  • ??????????(pic_id,pic_udid,relate_id,relate_code,relate_code_dtl,pic_name,pic_url,pic_remote_url)???
  • ???????values??
  • ???????<foreach?collection="list"??item="item"?index="index"?separator=",">??
  • ??????????(#{item.picId},#{item.picUdid},#{item.relateId},#{item.relateCode},#{item.relateCodeDtl},#{item.picName},#{item.picUrl},#{item.picRemoteUrl})??
  • ???????</foreach>??????
  • ???????<selectKey?resultType="java.lang.Integer"?order="AFTER"?keyProperty="picId">??
  • ????????????select?LAST_INSERT_ID();??
  • ???????</selectKey>???
  • ????</insert>??
  • ?

    ?

    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]的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。