zoukankan      html  css  js  c++  java
  • mybatisplus----CRUD操作之插入操作,及主键自增策略(雪花算法简述)

    测试插入:

        //测试插入
        @Test
        void testInsert(){
            User user=new User();
            user.setAge(3);
            user.setEmail("269805365@qq.com");
    //        user.setId();  我们故意不进行设置id,我们会发现会自动生成id
            user.setName("yfsn");
            int insert = userMapper.insert(user);
            System.out.println(insert);
            System.out.println(user);//经过输出我们会发现,自动设置id之后这个id会回填的我们的java对象中
    
    
        }

    结果:

    数据库插入的id的默认值为:全局的唯一id

    主键生成策略

    默认ID_WORKER全局唯-id

    分布式系统唯-id生成

    雪花算法:snowflake是Twitter开源的分布式ID生成算法,结果是一个long型的ID,其核心思想是:使用41bit作为毫秒数,10bit作为机器的ID(5个bit是数据中心,5个bit的机器ID),12bit作为毫秒内的流水号(意味着每个节点在每毫秒可以产生4096个ID),最后还有一个符号位,永远是0。

     主键自增

    我们需要配置主键自增:
    1、体段上Tablerd(type-IdType.AUTO)


    2、数据库字段一定要是自增!

     

    再次测试:

    关于@TableId注解type值的其他参数解释

    其与的源码解释
    public enum IdType{


    AUTO(0),//数据库id自增NONE(1),//未设置主键


    INPUT(2),//手动输入

    ID-WORKER(3),//默认的全局唯一id

    UUID(4),//全局唯-id uuid ID WORKERSTRI5);//ID_WORKER字符串表示法

     }

    迎风少年
  • 相关阅读:
    Topcoder Arena插件配置和训练指南
    [POJ] 3277 .City Horizon(离散+线段树)
    C++ STL算法系列 unique
    C. Polycarpus' Dice
    Codeforces Round #298 (Div. 2) B. Covered Path
    Matlab 2012a 下载和安装教程
    hdu 5203
    ....
    乐观锁vs悲观锁, 集群vs分布式 , 微服务, 幂等性
    正向代理 vs 反向代理
  • 原文地址:https://www.cnblogs.com/ZYH-coder0927/p/13968641.html
Copyright © 2011-2022 走看看