zoukankan      html  css  js  c++  java
  • 【Mybatis-Plus学习笔记(七)】主键策略

    本系列博客其他文章请点击下方链接查看
    【Mybatis-Plus学习笔记】目录

    MP支持的主键策略介绍

    Mybatis-Plus默认使用雪花算法生成主键。如果想了解雪花算法,可以看看笔者同系列文章——【Mybatis工具(五)】雪花算法。当然你还可以不使用默认的主键策略。

    局部主键策略实现

    MP的主键策略定义在枚举类IdType中

    /**
         * 数据库ID自增
         */
        AUTO(0),
        /**
         * 该类型为未设置主键类型
         */
        NONE(1),
        /**
         * 用户输入ID
         * <p>该类型可以通过自己注册自动填充插件进行填充</p>
         */
        INPUT(2),
    
        /* 以下3种类型、只有当插入对象ID 为空,才自动填充。 */
        /**
         * 全局唯一ID (idWorker)
         */
        ID_WORKER(3),
        /**
         * 全局唯一ID (UUID)
         */
        UUID(4),
        /**
         * 字符串全局唯一ID (idWorker 的字符串表示)
         */
        ID_WORKER_STR(5);
    

    0:数据库主键自增
    1:不配置主键策略,就是跟随全局,也就是雪花算法
    2:用户输入
    3、4、5只有当输入ID为0的时候才能有效,如果不为空,就会插入你输入的内容作为ID
    3:跟随全局,也就是雪花算法
    4:UUID作为主键
    5:跟随全局,也就是雪花算法,和3不同的是这个主键是字符串

    在相应的实体主键字段上面设置即可

        @TableId(type = IdType.AUTO)
        private Long id;
    

    全局主键策略实现

    全局配置需要修改配置文件,如下:

    mybatis-plus.global-config.db-config.id-type=uuid
    

    如果全局策略和局部策略同时存在,局部策略优先于全局策略。

    其实在项目不是很大的情况下,主键自增完全应付的过来,所以笔者还是老老实实的用主键自增吧。

  • 相关阅读:
    java练习题2
    java练习题
    java输入输出
    字符集
    eclipse快捷键
    类和对象练习-people
    类和对象-三角形
    权限修饰符-输出求和阶乘
    权限修饰符-练习
    权限修饰符-father&&son
  • 原文地址:https://www.cnblogs.com/zllk/p/14044727.html
Copyright © 2011-2022 走看看