zoukankan      html  css  js  c++  java
  • 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了。

  • 相关阅读:
    Redis数据类型和基本操作
    Redis持久化
    Redis安装
    MySQL5.7二进制包安装
    Django ORM多表操作
    Django中启用事务
    Django ORM单表操作
    MySQL事务
    用顺序栈实现十进制向二进制转化
    顺序栈
  • 原文地址:https://www.cnblogs.com/donglaotao/p/14236713.html
Copyright © 2011-2022 走看看