# 使用MyBatis Plus实现UUID主键生成
在数据库中,主键是用于唯一标识每个记录的字段。通常我们使用自增长的整型数字作为主键,但也有一些其他的唯一标识方式,比如UUID。UUID是一种全局唯一标识符,能够保证在分布式系统中的唯一性。
在Java开发中,我们可以使用MyBatis Plus这个优秀的持久层框架配合UUID来实现主键的生成。下面让我们来看一下具体的实现步骤。
## 步            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-05-22 06:07:51
                            
                                906阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            @TableName描述:表名注解,标识实体类对应的表,用来绑定实体类和表如果表名和类名一致可以省略使用位置:实体类@TableName("tbl_product") //绑定表关系
public class Product {如果每个表都是以固定前缀开头,可以全局配置表前缀属性设置 > 全局设置: 如果使用了 @TableName 指定表名,则会忽略全局的表前缀mybatis-plus:            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-07-05 21:35:26
                            
                                1149阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            博主原创,转载请注明出处: mybatis plus 对实体类映射表的主键做了注解支持,该注解为 @TableId ,如果不使用该注解,mybatis plus 默认主键生成的策略是内部封装的雪花算法。 @TableId 注解定义的代码如下: @Documented @Retention(Reten            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-02-21 11:22:50
                            
                                354阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            一、普通添加方法①创建一个主键生成策略的类,实现tk.mybatis.mapper.genid.GenId接口:import tk.mybatis.mapper.genid.GenId;
public class IdWorker implements GenId<Long> {
    @Override
    public Long genId(String table,            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-10-21 18:41:57
                            
                                102阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            主键默认策略(注解不加默认为ASSIGN_ID): @TableId(type = IdType.ASSIGN_ID) 自增主键策略: @TableId(type = IdType.AUTO) 配置文件设置主键生成策略: mybatis-plus.global-config.db-config.id ...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-10-27 21:19:00
                            
                                494阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            mybatis-plus3.X主键生成策略 目录  文章目录1、生成策略及解析1.1、IdType.AUTO1.2、IdType.ASSIGN_ID1.3、IdType.INPUT1.4、IdType.ASSIGN_UUID1.5、IdType.NONE2、常用自定义主键规则2.1、 Redis生成ID2.2、oracle 通过序列实现数值型自增3、springboot配置***后记*** : 内            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-12-14 16:44:49
                            
                                223阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            1.将数据库中的主键,设置为varchar(32)。2.在entity中类头部写入@GenericGenerator(name = "jpa-uuid", strategy = "uuid")3.在entity中id主键顶部写入@GeneratedValue(generator = "jpa-uuid"),注意generator中的值必须与注释@GenericGene            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-10-25 14:09:16
                            
                                245阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            # 使用 MyBatis-Plus 和 MySQL 自增主键的实践指南
在现代的 Java 应用开发中,数据访问层使用 ORM(对象关系映射)框架,可以有效地简化数据库操作。MyBatis-Plus 是一款基于 MyBatis 的增强工具,它提供了许多便捷的功能,比如简化 SQL 操作、支持代码生成等。本文将重点介绍如何在 MyBatis-Plus 中与 MySQL 自增主键结合使用,并提供相应            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-10-06 05:39:08
                            
                                137阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            TableId(value = "pay_id", type = IdType.ASSIGN_ID) // 使用雪花算法// 省略其他字段JAVA 复制 全屏。            
                
         
            
            
            
            ## 使用Java生成UUID作为主键的流程
为了实现在Java中使用UUID作为主键,我们需要完成以下步骤:
| 步骤 | 说明 |
| ---- | ---- |
| 步骤一 | 创建实体类 |
| 步骤二 | 在实体类中定义UUID字段 |
| 步骤三 | 生成UUID |
| 步骤四 | 设置UUID为主键 |
| 步骤五 | 使用UUID作为主键进行数据库操作 |
接下来,我们将逐            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-09-29 09:49:26
                            
                                75阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            # Java UUID主键
在数据库中,主键(Primary Key)是用来唯一标识一条记录的字段或字段组合。主键的选择对于数据库的性能和数据完整性至关重要。在Java中,我们可以使用UUID(Universally Unique Identifier)作为主键,它能够在分布式系统中保证唯一性。本文将介绍Java中UUID主键的概念和使用方法,并提供相应的代码示例。
## 1. 什么是UUID            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-08-18 13:47:37
                            
                                132阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            关于Java主键UUID的问题,UUID(通用唯一标识符)是一种标准化的识别信息格式,广泛用于数据库表的主键,以避免主键重复。当系统面临高并发或者分布式环境时,UUID主键的生成在性能和存储方面将成为一个重要的技术考量。本文将详细探讨Java技术栈中UUID主键的问题,通过时间轴、表格、代码块等形式呈现其演进历程、架构设计、性能攻坚、故障复盘,与扩展应用。
## 背景定位
在最初的系统设计中,使            
                
         
            
            
            
            # Java UUID 主键
在软件开发中,数据的唯一标识是非常重要的。特别是在数据库设计中,主键的选择直接影响到数据的唯一性和查询效率。在使用 Java 开发时,我们经常会遇到需要生成唯一标识的情况。而 `UUID` 就是一种非常常用的生成唯一标识的方式。
## 什么是 UUID
`UUID` 全称为 Universally Unique Identifier,即通用唯一标识符。它是一个标            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2024-04-05 05:20:11
                            
                                28阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            <insert id="insert" parameterType="com.gzwb.wbspm.model.SpmInvoice" >  	<selectKey keyProperty="invoiceId" //主键列名 resultType="string" //主键类型 order="BEFORE" //执行insert语句之前先得到主键>             
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2017-06-03 21:32:10
                            
                                9860阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1.将数据库中的主键,设置为varchar(32)。2.在entity中类头部写入@GenericGenerator(name = "jpa-uuid", strategy = "uuid")3.在entity中id主键顶部写入@GeneratedValue(generator = "jpa-uuid"),注意generator中的值必须与注释@GenericGene            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-24 15:59:17
                            
                                1872阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1.情景展示 我们知道:使用mybatisPlus插入数据的时候完成主键的自增; 如何实现呢? 2.mysql 我们知道:mysql本身的主键就是自增的,在插入数据的时候,我们完全可以不插入主键字段,mysql数据库也会自动为我们插入主键ID; 所以说,这个主键自增与mybatisplus是毫不相关            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-02-15 00:48:50
                            
                                3184阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            主键不自增:返回值是插入的条数 <insert id="add" parameterType="EStudent" insert into TStudent(name, age) values( {name}, {age}) </insert 主键自增: <insert id="add" param            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2019-12-13 10:54:00
                            
                                373阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            Mybatis-Plus的主键生成策略1.IdType.AUTO(0),//数据库id自增 2.IdType.NONE(1),//未设            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-09-06 12:28:06
                            
                                142阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            mybatis-plus如何支持联合主键的使用            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-09-24 00:11:49
                            
                                3817阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            本文主要是介绍了Mybatis-Plus主键生成策略及其相关的扩展方法。 1、熟            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-12-07 19:25:52
                            
                                1913阅读
                            
                                                                             
                 
                
                                
                    