欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Mybatis Plus使用@TableId的示例詳解

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

Mybatis Plus使用@TableId

1. @TableId

1.1 @TableId 可選類型

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

public enum IdType {
    /**
     * 數(shù)據(jù)庫ID自增
     */
    AUTO(0),
    /**
     * 該類型為未設(shè)置主鍵類型(將跟隨全局)
     */
    NONE(1),
    /**
     * 用戶輸入ID
     * <p>該類型可以通過自己注冊自動填充插件進(jìn)行填充</p>
     */
    INPUT(2),
    /* 以下3種類型、只有當(dāng)插入對象ID 為空,才自動填充。 */
    /**
     * 全局唯一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ù)庫主鍵id,mysql必須設(shè)置自增主鍵,postgreSQL必須設(shè)置自增序列(例如:主鍵類型 serial4),才能夠使用此注解。

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

使用條件:
id 類型必須是Long;
因為ID_WORKER 生成的snowflakeId 是19位的全局id。

2. 非主鍵字段添加@TableId

如果一張表只是一個關(guān)聯(lián)表,非主表,只保存了主表的id。但任然需要通過這個字段對關(guān)聯(lián)表進(jìn)行CRUD。
此時只需要在關(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);

親測可用。

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

Mybatis-Plus中的@TableId

簡介

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

用法

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

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

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

主鍵生成策略

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

結(jié)束

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

相關(guān)文章

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

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

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

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

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

    Java 自動安裝校驗TLS/SSL證書

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

    自己動手寫一個java版簡單云相冊

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

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

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

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

    Nacos?提供了一組簡單易用的特性集,幫助您快速實現(xiàn)動態(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)入,本文重點給大家介紹Java開發(fā)神器Lombok安裝與使用詳解,感興趣的朋友跟隨小編一起看看吧
    2022-02-02
  • IntelliJ IDEA如何設(shè)置JDK版本

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

    這篇文章主要介紹了IntelliJ IDEA如何設(shè)置JDK版本問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    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這兩個類來實現(xiàn)字節(jié)流向字符流的轉(zhuǎn)換
    2024-10-10
  • 如何獲取MyBatis Plus執(zhí)行的完整的SQL語句

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

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

最新評論