MyBatis-Plus 批量插入數(shù)據(jù)的操作方法
spring boot+mybatis plus環(huán)境,單條插入用的是BaseMapper自帶的insert方法
public ApiResult addAnc(Anc anc) {
ApiResult result = new ApiResult();
Integer insert = ancMapper.insert(anc);
if (insert < 1) {
return result.failed("發(fā)布失敗,請聯(lián)系管理員");
}
return result.success(anc);
BaseMapper未提供批量插入接口,但是在com.baomidou.mybatisplus.service.IService中提供了
/**
* <p>
* 插入(批量),該方法不適合 Oracle
* </p>
*
* @param entityList 實體對象列表
* @return boolean
*/
boolean insertBatch(List<T> entityList);
/**
* <p>
* 插入(批量)
* </p>
*
* @param entityList 實體對象列表
* @param batchSize 插入批次數(shù)量
* @return boolean
*/
boolean insertBatch(List<T> entityList, int batchSize);
使用方法,定義一個自己的接口,繼承IService,泛型為被操作實體類
@Service
public interface WorkIService extends IService<CmpWork> {
}
定義一個實現(xiàn)類,實現(xiàn)上訴接口
@Service
public class WorkIServiceImpl extends ServiceImpl<WorkMapper, CmpWork> implements WorkIService{
}
其中WorkMapper為正常操作的mapper
在業(yè)務中測試批量插入操作
List<CmpWork> entityList = new ArrayList<>(1000);
for (int i=1;i<10000;i++){
CmpWork work = new CmpWork();
work.setWorkName("workNametestBatch"+i);
work.setWorkID("testBatch"+i);
work.setCreTm(DateUtil.dateToYMDHMS(new Date()));
entityList.add(work);
}
boolean b = workIService.insertBatch(entityList);
和單條插入的執(zhí)行對比了一下,在1000條數(shù)據(jù)級別內(nèi),差別不大,批量操作的優(yōu)勢可能大數(shù)據(jù)環(huán)境下才能顯現(xiàn)吧
到此這篇關于MyBatis-Plus 批量插入的文章就介紹到這了,更多相關MyBatis-Plus 批量插入內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Spring?Data?JPA框架的核心概念與Repository接口詳解
Spring?Data?JPA是Spring基于JPA規(guī)范的基礎上封裝的?套?JPA?應?框架,可使開發(fā)者?極簡的代碼即可實現(xiàn)對數(shù)據(jù)庫的訪問和操作,本篇我們來了解Spring?Data?JPA框架的核心概念與Repository接口2022-04-04
IDEA創(chuàng)建Servlet編寫HelloWorldServlet頁面詳細教程(圖文并茂)
在學習servlet過程中參考的教程是用eclipse完成的,而我在練習的過程中是使用IDEA的,在創(chuàng)建servlet程序時遇到了挺多困難,在此記錄一下,這篇文章主要給大家介紹了關于IDEA創(chuàng)建Servlet編寫HelloWorldServlet頁面詳細教程的相關資料,需要的朋友可以參考下2023-10-10
mybatisplus根據(jù)條件只更新一個字段的實現(xiàn)
MyBatis-Plus提供使用update方法結合Wrapper來指定更新條件和要更新的字段,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2024-12-12
springboot使用redisTemplate操作lua腳本
本文主要介紹了springboot使用redisTemplate操作lua腳本,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-08-08
解決spring cloud zuul與nginx的域名轉(zhuǎn)發(fā)問題
這篇文章主要介紹了spring cloud zuul與nginx的域名轉(zhuǎn)發(fā)問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-07-07

