Mybatis Plus的@TableId注解的使用


這個注釋主要用於對應數據庫表的實體類中的主鍵屬性。

寫法:@TableId(value=“數據庫主鍵字段”,type = IdType.六種類型之一)
例如:@TableId(value=“user_id”,type = IdType.AUTO )

1、注解中type的值的含義

    //IdType.ID_WORKER_STR 默認的;底層使用了雪花算法;類型為Integer
    //IdType.AUTO 數據庫自增;數據庫上也要勾上自增
    //IdType.NONE 沒有設置主鍵類型;跟隨全局;全局的主鍵策略如果沒有設置,默認是雪花算法
    //IdType.INPUT 手動輸入;必須手動輸入,數據庫自增也沒用;
    //IdType.UUID 全局唯一id;無序;字符串;
    //ID_WORKER_STR 全局唯一(idWorker的字符串表示);

2,全局主鍵策略實現

需要在application.yml文件中添加

mybatis-plus:
  mapper-locations:
    - com/mp/mapper/*
  global-config:
    db-config:
      id-type: uuid/none/input/id_worker/id_worker_str/auto   表示全局主鍵都采用該策略(如果全局策略和局部策略都有設置,局部策略優先級高)

3、Mybatis-plus自動生成mysql的UUId

/**
	 * ID
	 */
	@TableId(type = IdType.UUID)
	private String id;

注意:

1.修改entity的代碼如上,生成getter and setter

2.修改數據庫的數據類型為varchar(36)

這樣就可以使用UUID了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM