mybatis 批量insert 返回主鍵(實例)

時刻記得:不忘初心,方得始終

功能

實現(xiàn)批量插入,并且返回自增id、隨機id、uuid等。隨你用什么策略。

話不多說,上實例

  • bean
public class UserInfo
{
    private int userId;
    private String userName;
    private StringuserPwd;
    ```(get、set方法)    
}
  • Dao
public interface UserDao{
  int insertBatch(List<UserInfo> userList);
}
  • mapper
<insert id="insertBatch" parameterType="java.util.List" useGeneratedKeys="true" keyProperty="userId">
  insert into user_info
  (
    user_id,
    user_name,
    user_pwd
   )
   values 
  <foreach collection="list" item="item" index="index" separator=","> 
   (     
    null,
    #{item.userName,jdbcType=VARCHAR},
    #{item.userPwd,jdbcType=VARCHAR}
   ) 
   </foreach> 
 </insert>
  • serviceImpl
public List<UserInfo> saveCheckin(List<UserInfo> userList) {
  userDao.insertCheckin(userList); //成功后對象userList里面已經(jīng)包含主鍵user_id
  return userList;
}

注意

要將mybatis升到3.3.1以上
不要在Dao 層加@Param注解,不然會被報如下錯誤

報錯:Parameter '你的@Param參數(shù)' not found. Available parameters are [list]

如有幫助,不必言謝,點擊打賞

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容