Mybatis 批量操作 HashMap入參配置

2021-09-16 13:02:25 字數 379 閱讀 6678

mybatis批量操作主要包括:批量插入、批量更新、批量查詢

工作中遇到這麼乙個問題:使用hashmap作為批量更新的入參,但是在開發和測試環境下測試均沒有發現問題,但是在預發布準生產環境下始終測試不通過。

剛開始懷疑sql有問題,仔細一想不應該哈,畢竟其它環境沒問題。接著進行除錯,發現多條記錄更新時失敗,日誌提示sql在哪一行有問題,但表中僅存一條記錄時更新竟然成功,故懷疑可能配置有問題,對比發現,確實mysql的連線配置引數不同,缺少了「allowmultiqueries=true」配置,後經測試問題解決。

另外發現原系統中也存在批量操作,但入參是list集合,使用hashmap集合時需要手動去開啟批量配置,兩種集合作為入參時存在少許差別,僅記以查漏補缺。

mybatis 批量操作

foreach屬性 屬性描述 item 迴圈體中的具體物件。支援屬性的點路徑訪問,如item.age,item.info.details。具體說明 在list和陣列中是其中的物件,在map中是value。該引數為必選。collection 要做foreach的物件,作為入參時,list 物件預設用l...

mybatis批量操作

查詢id在in裡面的測試 list測試 listselectidin param idlist listidlist 查詢id在in裡面的測試 map測試,就是id在乙個map中 listselectinmap param idmap hashmapidmap 修改所有id在list中的測試 int...

mybatis批量操作

應用場景 今天做了乙個插入資料的小功能,將含有50個物件的集合 list 插入到資料庫。自然而然的就要到了mybatis批量插入,記得剛參加工作時,類似場景我會寫乙個for迴圈,逐條插入資料。運算元據庫的時候會經過這樣乙個流程 建立 開啟 執行sql 關閉連線,建立和開啟資料庫連線對效能是有損失的,...