mybatis的id策略 |
您所在的位置:网站首页 › 如何自己设置id › mybatis的id策略 |
mybatis的id策略
在我们的id上可以加上@TableId()注解 @TbleId(type = ???) private Long id;这个注解有两个属性,value和type @Documented @Retention(RetentionPolicy.RUNTIME) @Target({ElementType.FIELD, ElementType.ANNOTATION_TYPE}) public @interface TableId { String value() default ""; IdType type() default IdType.NONE; }value就是给个默认值,也可在郁闷了,properties里配,就不解释了 这个type就是id生成策略 public enum IdType { AUTO(0),//自增 NONE(1), INPUT(2), ASSIGN_ID(3), ASSIGN_UUID(4), /** @deprecated */ @Deprecated ID_WORKER(3), /** @deprecated */ @Deprecated ID_WORKER_STR(3), /** @deprecated */ @Deprecated UUID(4); private final int key; private IdType(int key) { this.key = key; } public int getKey() { return this.key; } }AUTO(0),自增,注意实体类中选择的属性,一定要在数据库中设置自增 NONE(1),未设置 INPUT(2),手动输入,一旦设置,就需要自己手动输入 ID_WORKER(3),采用雪花算法生成的id(默认id生成方式)这个默认方式是自动帮你生成i的id默认生成方式,AUTO模式的默认,你只写这东西是不行的,可看下篇文章 UUID(4),全局的uuid,自动帮你搞 ID_WORKER_STR(5);ID_WORKER(3)的字符串表示法 雪花算法生成id 时间戳+机器的id+序列号 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |