5.jpg

一、UUID简介

  • UUID 是 通用唯一识别码(Universally Unique Identifier)的缩写,是一种软件建构的标准,亦为开放软件基金会组织在分布式计算环境 领域的一部分。
  • 其目的,是让分布式系统中的所有元素,都能有唯一的辨识信息,而不需要通过中央控制端来做辨识信息的指定。
  • 如此一来,每个人都可以创建不与其它人冲突的UUID。

二、UUID组成

  1. 当前日期和时间,UUID的第一个部分与时间有关,如果你在生成一个UUID之后,过几秒又生成一个UUID,则第一个部分不同,其余相同。
  2. 时钟序列。
  3. 全局唯一的IEEE机器识别号,如果有网卡,从网卡MAC地址获得,没有网卡以其他方式获得。

三、UUID作用

UUID 的目的是让分布式系统中的所有元素,都能有唯一的辨识资讯,而不需要透过中央控制端来做辨识资讯的指定。如此一来,每个人都可以建立不与其它人冲突的 UUID。在这样的情况下,就不需考虑数据库建立时的名称重复问题。

四、快速入门

API:

java.lang.Object
继承者 java.util.UUID

public final class UUIDextends Objectimplements Serializable, Comparable<UUID>
randomUUID

public static UUID randomUUID()获取类型 4(伪随机生成的)UUID 的静态工厂。 使用加密的强伪随机数生成器生成该 UUID。 
返回:
随机生成的 UUID。

快速获取一个UUID

public static String getUUID(){
        return UUID.randomUUID().toString().replace("-","");
    }

接这篇文章的数据库字段
https://blog.csdn.net/qq_43442335/article/details/107595189

Test

    @Test
    public void insertBlogs(){
        SqlSession sqlSession = MybatisUtils.getSqlSession();
        Blog blog = new Blog(MybatisUtils.getUUID(),"Spring如此神奇","可星",new Date(),1000);
        BlogMapper mapper = sqlSession.getMapper(BlogMapper.class);
        mapper.insertBlog(blog);

        blog.setId(MybatisUtils.getUUID());
        blog.setTitle("编程改变世界");
        blog.setCreateTime(new Date());
        blog.setViews(200000);
        mapper.insertBlog(blog);
        
        blog.setId(MybatisUtils.getUUID());
        blog.setTitle("程序员OR工程师");
        blog.setCreateTime(new Date());
        blog.setViews(300000);
        mapper.insertBlog(blog);

        sqlSession.commit();
        sqlSession.close();
    }

在这里插入图片描述

生成三个唯一的UUID:
367bb4a9f9044c4c9176eb9eddd3afc7
814cc4e148db4529bbb0a5ddeb12a165
e54ac0d878534098b907bae7357c956f

最后修改:2020 年 09 月 12 日 06 : 04 PM
如果觉得我的文章对你有用,请随意赞赏