亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Mybatis Plus使用@TableId的示例詳解

 更新時(shí)間:2024年08月20日 11:24:53   作者:GoodStudyAndDayDayUp  
在 MyBatis Plus 中,@TableId 注解是用于標(biāo)記實(shí)體類中的主鍵字段,它可以更方便地處理主鍵相關(guān)的操作,如自動(dòng)填充主鍵值或識(shí)別主鍵字段,這篇文章主要介紹了Mybatis Plus使用@TableId,需要的朋友可以參考下

Mybatis Plus使用@TableId

1. @TableId

1.1 @TableId 可選類型

不添加注解時(shí),默認(rèn)使用ID_WORKER(3)

public enum IdType {
    /**
     * 數(shù)據(jù)庫(kù)ID自增
     */
    AUTO(0),
    /**
     * 該類型為未設(shè)置主鍵類型(將跟隨全局)
     */
    NONE(1),
    /**
     * 用戶輸入ID
     * <p>該類型可以通過(guò)自己注冊(cè)自動(dòng)填充插件進(jìn)行填充</p>
     */
    INPUT(2),
    /* 以下3種類型、只有當(dāng)插入對(duì)象ID 為空,才自動(dòng)填充。 */
    /**
     * 全局唯一ID (idWorker)
     */
    ID_WORKER(3),
    /**
     * 全局唯一ID (UUID)
     */
    UUID(4),
    /**
     * 字符串全局唯一ID (idWorker 的字符串表示)
     */
    ID_WORKER_STR(5);
    }

1.2 @TableId(value = “id”,type= IdType.AUTO)

使用條件:
id 類型可以是Interger/Long;
數(shù)據(jù)庫(kù)主鍵id,mysql必須設(shè)置自增主鍵,postgreSQL必須設(shè)置自增序列(例如:主鍵類型 serial4),才能夠使用此注解。

1.3 @TableId(value = “id”,type= IdType.ID_WORKER)

使用條件:
id 類型必須是Long;
因?yàn)镮D_WORKER 生成的snowflakeId 是19位的全局id。

2. 非主鍵字段添加@TableId

如果一張表只是一個(gè)關(guān)聯(lián)表,非主表,只保存了主表的id。但任然需要通過(guò)這個(gè)字段對(duì)關(guān)聯(lián)表進(jìn)行CRUD。
此時(shí)只需要在關(guān)聯(lián)表的該字段上加@TableId ,即可使用 mybatis-plus mapper自帶的方法;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.util.Date;
@Data
@TableName("fbr_basic_info")
public class FBRBasicInfoEntity {
    @TableId
    private Integer fbrInfoId;
    private String fbrType;
    private String fbrTypeCode;
    }

使用示例
查詢

FBRBasicInfoEntity basicInfoEntity = fbrBasicInfoMapper.selectById(fbrInfoId);

新增

 FBRBasicInfoEntity basicInfoEntity = FBRAssemble.trans(basicInfoVO);
fbrBasicInfoMapper.insert(basicInfoEntity);

修改

fbrBasicInfoMapper.updateById(basicInfoEntity);

親測(cè)可用。

補(bǔ)充:Mybatis-Plus中的@TableId

Mybatis-Plus中的@TableId

簡(jiǎn)介

MyBatis Plus 中,@TableId 注解是用于標(biāo)記實(shí)體類中的主鍵字段。它可以更方便地處理主鍵相關(guān)的操作,如自動(dòng)填充主鍵值或識(shí)別主鍵字段。

用法

public class User {
    @TableId(value = "user_id", type = IdType.AUTO)
    private Long userId;
    ...
}

用戶表 user,其中主鍵字段名為 user_id,這個(gè)主鍵是數(shù)據(jù)庫(kù)自增

value:指定數(shù)據(jù)庫(kù)表中的主鍵字段名稱。如果實(shí)體類的屬性名與數(shù)據(jù)庫(kù)表中的主鍵字段名相同,則可以省略此屬性。
type:指定主鍵生成策略。

主鍵生成策略

  • IdType.AUTO:表示主鍵自增,適用于數(shù)據(jù)庫(kù)支持的自增主鍵,如 MySQLAUTO_INCREMENT。
  • IdType.ASSIGN_ID:使用雪花算法(Snowflake Algorithm)生成主鍵。
  • IdType.ASSIGN_UUID:生成一個(gè)不包含中劃線的 UUID 作為主鍵。
  • IdType.INPUT:表示主鍵值需要手動(dòng)輸入或設(shè)置。

結(jié)束

到此這篇關(guān)于Mybatis Plus使用@TableId的文章就介紹到這了,更多相關(guān)Mybatis Plus使用@TableId內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解Spring?MVC優(yōu)雅處理異常的6種方式

    詳解Spring?MVC優(yōu)雅處理異常的6種方式

    在Spring中提供了多種機(jī)制來(lái)處理控制器拋出的異常,確保應(yīng)用程序在面對(duì)各種錯(cuò)誤情況時(shí)能夠優(yōu)雅地響應(yīng),本文我們來(lái)詳細(xì)分析Spring?MVC中6種優(yōu)雅處理異常的方式,需要的可以參考下
    2024-12-12
  • java 利用反射機(jī)制,獲取實(shí)體所有屬性和方法,并對(duì)屬性賦值

    java 利用反射機(jī)制,獲取實(shí)體所有屬性和方法,并對(duì)屬性賦值

    這篇文章主要介紹了 java 利用反射機(jī)制,獲取實(shí)體所有屬性和方法,并對(duì)屬性賦值的相關(guān)資料,需要的朋友可以參考下
    2017-01-01
  • Java 自動(dòng)安裝校驗(yàn)TLS/SSL證書

    Java 自動(dòng)安裝校驗(yàn)TLS/SSL證書

    這篇文章主要介紹了Java 自動(dòng)安裝校驗(yàn)TLS/SSL證書的示例,幫助大家更好的理解和使用Java,感興趣的朋友可以了解下
    2020-10-10
  • 自己動(dòng)手寫一個(gè)java版簡(jiǎn)單云相冊(cè)

    自己動(dòng)手寫一個(gè)java版簡(jiǎn)單云相冊(cè)

    這篇文章主要為大家分享了自己動(dòng)手寫的一個(gè)java版簡(jiǎn)單云相冊(cè),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-07-07
  • 使用Idea連接MySQL的詳細(xì)步驟總結(jié)

    使用Idea連接MySQL的詳細(xì)步驟總結(jié)

    今天給大家?guī)?lái)的是關(guān)于IDEA連接數(shù)據(jù)庫(kù)的問(wèn)題,文章圍繞著使用Idea連接MySQL的詳細(xì)步驟展開,文中有非常詳細(xì)的介紹及圖文示例,需要的朋友可以參考下
    2021-06-06
  • springboot整合nacos的入門Demo及Nacos安裝部署

    springboot整合nacos的入門Demo及Nacos安裝部署

    Nacos?提供了一組簡(jiǎn)單易用的特性集,幫助您快速實(shí)現(xiàn)動(dòng)態(tài)服務(wù)發(fā)現(xiàn)、服務(wù)配置、服務(wù)元數(shù)據(jù)及流量管理,Nacos?致力于幫助您發(fā)現(xiàn)、配置和管理微服務(wù),這篇文章主要介紹了springboot整合nacos的入門Demo,需要的朋友可以參考下
    2024-01-01
  • Java開發(fā)神器Lombok安裝與使用詳解

    Java開發(fā)神器Lombok安裝與使用詳解

    Lombok的安裝分兩部分:Idea插件的安裝和maven中pom文件的導(dǎo)入,本文重點(diǎn)給大家介紹Java開發(fā)神器Lombok安裝與使用詳解,感興趣的朋友跟隨小編一起看看吧
    2022-02-02
  • IntelliJ IDEA如何設(shè)置JDK版本

    IntelliJ IDEA如何設(shè)置JDK版本

    這篇文章主要介紹了IntelliJ IDEA如何設(shè)置JDK版本問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • Java中IO流之字符流與字節(jié)流的轉(zhuǎn)換方式

    Java中IO流之字符流與字節(jié)流的轉(zhuǎn)換方式

    在Java中,字節(jié)流與字符流是處理數(shù)據(jù)的兩種方式,字節(jié)流適用于處理各種數(shù)據(jù)類型,如圖片、音頻等非文本數(shù)據(jù),而字符流專門用于處理文本數(shù)據(jù),Java提供了InputStreamReader和OutputStreamWriter這兩個(gè)類來(lái)實(shí)現(xiàn)字節(jié)流向字符流的轉(zhuǎn)換
    2024-10-10
  • 如何獲取MyBatis Plus執(zhí)行的完整的SQL語(yǔ)句

    如何獲取MyBatis Plus執(zhí)行的完整的SQL語(yǔ)句

    這篇文章主要介紹了如何獲取MyBatis Plus執(zhí)行的完整的SQL語(yǔ)句問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-07-07

最新評(píng)論