最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Mybatis中通用Mapper的InsertList()用法

 更新時間:2025年02月08日 09:27:05   作者:大金海  
文章介紹了通用Mapper中的insertList()方法在批量新增時的使用方式,包括自增ID和自定義ID的情況,對于自增ID,使用tk.mybatis.mapper.additional.insert.InsertListMapper包下的insertList()方法;對于自定義ID,需要重寫insertList()方法

關(guān)于通用mapper中的的insertList()方法

針對通用Mapper中批量新增時是否需要自增ID或者自定義ID時需要使用不同包下的insertList()

通常批量插入的ID非自增的ID(及自定義生成ID策略),所以tk.mybatis.mapper.additional.insert.InsertListMapper包下的insertList()經(jīng)常用在項目組中

配合@Intercepts 自定義 Mybatis 攔截 update 操作(添加和修改)

tk.mybatis.mapper.common.special.InsertListMapper包下的insertList()方法

  • pom導(dǎo)入:
        <dependency>
            <groupId>tk.mybatis</groupId>
            <artifactId>mapper-base</artifactId>
        </dependency>
        <dependency>
            <groupId>tk.mybatis</groupId>
            <artifactId>mapper-core</artifactId>
        </dependency>

使用該方法的實體類主鍵必須是自增的(需要在實體類中指出)。

如果實體的主鍵名為’id’,同時主鍵自增。在不修改代碼的情況下,使用insertList()方法實現(xiàn)的批量插入數(shù)據(jù)后通用mapper能自動回寫主鍵值到實體對象中。

  • 如以下實體類和對應(yīng)mapper:
@Data
@Table(name = "user")
public class User {
    @Id
    @KeySql(useGeneratedKeys = true)
    private Integer id;
    private String username;
    private String desc;
}

public interface UserMapper extends InsertListMapper<User> {

}

如果實體類主鍵名不是id,同時實體類主鍵是自增的,想要實現(xiàn)實體類主鍵回寫,需要重寫insertList()方法,其實就是修改了注解上的值,把@Options注解上的keyProperty值改為自己實體類的主鍵名

  • 如以下實體類和對應(yīng)的mapper:
@Data
@Table(name = "user")
public class User {
   @Id
   @KeySql(useGeneratedKeys = true)
   private Integer uid;
   private String username;
   private String desc;
}

public interface UserMapper extends Mapper<User>, InsertListMapper<User> {

    @Options(keyProperty = "uid",useGeneratedKeys = true)
    @InsertProvider(type = SpecialProvider.class, method = "dynamicSQL")
    int insertList(List<User> recordList);
}

tk.mybatis.mapper.additional.insert.InsertListMapper包下的insertList()方法

  • pom導(dǎo)入:
        <!-- https://mvnrepository.com/artifact/tk.mybatis/mapper-extra -->
        <dependency>
            <groupId>tk.mybatis</groupId>
            <artifactId>mapper-extra</artifactId>
            <version>1.1.5</version>
        </dependency>
  • 該方法不支持主鍵策略,需要在實體類中指定主鍵。
  • 該方法執(zhí)行后不會回寫實體類的主鍵值。

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java中Spring對事務(wù)的支持詳解

    Java中Spring對事務(wù)的支持詳解

    這篇文章主要介紹了Java中Spring對事務(wù)的支持詳解,Spring對事務(wù)的支持有兩種方式,一是自己編寫事務(wù),精確控制事務(wù)的邊界,二是采用聲明事務(wù)的方式,使用AOP來完成,需要的朋友可以參考下
    2023-07-07
  • SpringBoot集成xxl-job實現(xiàn)超牛的定時任務(wù)的步驟詳解

    SpringBoot集成xxl-job實現(xiàn)超牛的定時任務(wù)的步驟詳解

    XXL-JOB是一個分布式任務(wù)調(diào)度平臺,其核心設(shè)計目標(biāo)是開發(fā)迅速、學(xué)習(xí)簡單、輕量級、易擴(kuò)展,現(xiàn)已開放源代碼并接入多家公司線上產(chǎn)品線,開箱即用,本文給大家介紹了SpringBoot集成xxl-job實現(xiàn)超牛的定時任務(wù),需要的朋友可以參考下
    2023-10-10
  • Swing拆分窗格控件JSplitPane使用詳解

    Swing拆分窗格控件JSplitPane使用詳解

    這篇文章主要為大家詳細(xì)介紹了Swing拆分窗格控件JSplitPane的使用方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • spring容器初始化遇到的死鎖問題解決

    spring容器初始化遇到的死鎖問題解決

    這篇文章主要給大家介紹了關(guān)于spring容器初始化時候遇到的死鎖問題的解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-07-07
  • 詳解Java的四種引用方式及其區(qū)別

    詳解Java的四種引用方式及其區(qū)別

    這篇文章主要介紹了Java的四種引用方式 ,主要主要包括強(qiáng)引用,軟引用,弱引用,虛引用,稍微整理精簡一下做下分享,具有一定的參考價值,需要的朋友可以參考下
    2018-12-12
  • 淺談SpringBoot內(nèi)嵌Tomcat的實現(xiàn)原理解析

    淺談SpringBoot內(nèi)嵌Tomcat的實現(xiàn)原理解析

    這篇文章主要介紹了淺談SpringBoot內(nèi)嵌Tomcat的實現(xiàn)原理解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • 淺談UUID生成的原理及優(yōu)缺點

    淺談UUID生成的原理及優(yōu)缺點

    UUID是一套用于生成全局唯一標(biāo)識符的標(biāo)準(zhǔn),也被稱為GUID?(Globally?Unique?Identifier),通過使用UUID可以在分布式系統(tǒng)中生成唯一的?ID,UUID的生成方式有多種,本文將詳細(xì)講解?UUID?的生成原理、特性、實用場景以及優(yōu)缺點
    2023-06-06
  • java中final修飾符實例分析

    java中final修飾符實例分析

    本文通過實例向我們展示了java中final修飾符的概念,final修飾的基本變量和引用類型變量的區(qū)別。有需要的小伙伴可以參考下
    2014-11-11
  • 使用Java將字節(jié)數(shù)組轉(zhuǎn)成16進(jìn)制形式的代碼實現(xiàn)

    使用Java將字節(jié)數(shù)組轉(zhuǎn)成16進(jìn)制形式的代碼實現(xiàn)

    在很多場景下,需要進(jìn)行分析字節(jié)數(shù)據(jù),但是我們存起來的字節(jié)數(shù)據(jù)一般都是二進(jìn)制的,這時候就需要我們將其轉(zhuǎn)成16進(jìn)制的方式方便分析,本文主要介紹如何使用Java將字節(jié)數(shù)組格式化成16進(jìn)制的格式并輸出,需要的朋友可以參考下
    2024-05-05
  • 解決idea刪除模塊后重新創(chuàng)建顯示該模塊已經(jīng)被注冊的問題

    解決idea刪除模塊后重新創(chuàng)建顯示該模塊已經(jīng)被注冊的問題

    這篇文章主要介紹了解決idea刪除模塊后重新創(chuàng)建顯示該模塊已經(jīng)被注冊的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02

最新評論

左云县| 九龙县| 濉溪县| 临夏市| 内乡县| 上林县| 烟台市| 万年县| 酒泉市| 探索| 抚顺市| 凤台县| 桦南县| 吉水县| 惠州市| 平江县| 禄丰县| 蕉岭县| 扎兰屯市| 同德县| 神木县| 陆川县| 封开县| 元朗区| 贵港市| 宁晋县| 临洮县| 盘锦市| 商南县| 乃东县| 济阳县| 乐业县| 武定县| 鲁山县| 宜宾县| 山丹县| 黎川县| 新丰县| 大港区| 大悟县| 宁河县|