mysql java uuid_Java生成UUID 与 MySQL数据库如何生成uuid数据
一、Java
1.UUID 简介
UUID 含义是通用唯一识别码 (Universally Unique Identifier),这是一个软件建构的标准。也是被开源软件基金会 (Open Software Foundation, OSF) 的组织应用在分布式计算环境 (Distributed Computing Environment, DCE) 领域的一部分。
UUID 的目的,是让分布式系统中的所有元素,都能有唯一的辨识资讯,而不需要透过中央控制端来做辨识资讯的指定。如此一来,每个人都可以建立不与其它人冲突的 UUID。在这样的情况下,就不需考虑数据库建立时的名称重复问题。
UUID 来作为数据库数据表主键是非常不错的选择,保证每次生成的UUID 是唯一的。
UUID的唯一缺陷在于生成的结果串会比较长。关于UUID这个标准使用最普遍的是微软的GUID(Globals Unique Identifiers)。
标准的UUID格式为:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx (8-4-4-4-12)。
a.生成 UUID
public static voidmain(String[] args) {for(int i=0;i<10;i++){
String uuid= UUID.randomUUID().toString().replaceAll("-", "");
System.out.println(uuid);
}
}
b.生成指定数目的 UUID
public static voidmain(String[] args) {
String u=getUUID();
System.out.println(u);
}/**
* 获得指定数目的UUID
* @param number int 需要获得的UUID数量
* @return String[] UUID数组*/
public static String[] getUUID(intnum){if(num < 1){return null;
}
String[] retArray= newString[num];for(int i=0;i
retArray[i]=getUUID();
}returnretArray;
}/**
* 获得一个UUID
* @return String UUID*/
public staticString getUUID(){
String uuid=UUID.randomUUID().toString();//去掉“-”符号
return uuid.replaceAll("-", "");
}
二、MySQL数据库如何批量插入不重复uuid数据
第一步:先把需要查询的数据列出来select UUID(), a.Code, a.Name,a.Continent from 表名1 a, 表名2 b where a.Code =b.CountryCode;
注意:UUID()不要分割,分割后,uuid相同
第二步:把数据插入到表中
insert into 表名(id,code,name,continent) (select UUID(), a.Code, a.Name,a.Continent from 表名1 a, 表名2 b where a.Code =b.CountryCode
);
第三步:更新UUID,将“-”替换掉
update TEMPTABLEset id =select REPLACE(id,'-','')
三、生成UUID
/*只能生成一条*/SELECT REPLACE(UUID(),'-','') AS id;/*在数据库中找一张数据多的表执行生成多条*/SELECT (REPLACE(UUID(),'-', '')) id FROM 表名 LIMIT (条数50);
四、sqlServer 生成UUID方法
select newId();
mysql java uuid_Java生成UUID 与 MySQL数据库如何生成uuid数据相关推荐
- mysql生成bak文件_数据库备份生成bak文件格式
MSSQL备份语句 --完整备份Backup Database NorthwindCSTo disk='G:\Backup\NorthwindCS_Full_20070908.bak'--差异备份Ba ...
- egg.js java 生产数据_eggjs中,自动从数据库直接生成model.
eggjs中,自动从数据库直接生成model. 使用sequelize-auto可以自动生成models 直接上命令就可以搞定了 # 安装必要的库 npm install -g sequelize-a ...
- mysql java中文乱码_解决Mysql+Java的中文乱码问题(学习心得)
最近几天一直都在学JSP,我用的数据库是Mysql.在连接数据库的过程中,刚开始我只是简单的执行了查询命令,发现从数据库取出的中文数据全部显示成了乱码,查了一些资料之后,我先用了下面的一个转换函数,值 ...
- rpm mysql java 驱动_Linux下安装MySQL(rpm方式)
之前一直想捣鼓以源码包的形式安装MySQL,但是不管我下的什么版本的MySQL的tar包,解压都会出错.哎,索性还是走回rpm的安装方式吧. 1:在安装rpm之前,需要把Linux自带的MySQL以及 ...
- django mysql返回json_Django 1.8.11 查询数据库返回JSON格式数据
Django 1.8.11 查询数据库返回JSON格式数据 和前端交互全部使用JSON,如何将数据库查询结果转换成JSON格式 环境 Win10 Python2.7 Django 1.8.11 返回多 ...
- mysql 主键设计 雪花算法_数据库 ID 生成方案:雪花算法
今天介绍的雪花算法:Snowflake,可以让负责生成分布式 ID 的每台机器在每毫秒内生成不一样的 ID.Snowflake 是 Twitter 开源的分布式 ID 生成算法,它不依赖数据库. 核心 ...
- mysql java dbutil_Java -- DBUtils 框架 操作MySQL数据库
1. 增删改查 常用Handler处理器示例 QueryRunner类提供了两个构造方法: •默认的构造方法 •需要一个javax.sql.DataSource来作参数的构造方法. public Ob ...
- mysql java中文乱码_java连接mysql添加中文乱码_MySQL
bitsCN.com java添加中文数据到mysql中, 包含中文就乱码 最初是想应该是由于字符编码不一致,所以查看数据库的属性跟表的属性 查看表的字符集也是utf8,不是的改成自己想要设置的,我这 ...
- mysql查询单表的销售额_MYsql数据库单表百万数据量查询
最近总在意自己的网页刷新数据的速度,mysql5.7和mysql8.0单表数据库导入百万甚至千万数据的时候,会不会卡死,会不会慢? 因此编写测试用例,通过Navicat Premium来查询单表的时间 ...
- mysql触发器 多数据_mysql的触发器同数据库多表的数据操作_MySQL
CREATE TRIGGER BEFORE ON FOR EACH ROW //语句可以是任何合法的语句,包括复合语句,但是这里的语句受的限制和函数的一样 2.触发器的创建 不能给同一张表的同一个事件 ...
最新文章
- 关于省客服集中全业务系统IT项目管理的几点分析!
- java高并发(二十)HashMap与ConcurrentHashMap
- 自学前端两三个月,很迷茫,有大佬可以指导吗?
- k型热电偶材料_热电偶温度计的二三事
- Python学习笔记—条件判断和循环
- xfce 安装文泉驿字体
- Lint 静态代码检查工具
- Python学习 -元组和集合
- WIN10合并磁盘扩展区是灰色的
- 灰度共生矩阵纹理特征提取matlab,灰度共生矩阵纹理特征提取的Matlab实现
- 计算机组成原理——计算机的工作过程
- 英特尔神经计算棒_如何设置英特尔Movidius神经计算棒
- 膳食营养与健康类毕业论文文献都有哪些?
- 力扣(20.232)补9.6
- Eatting外卖基于瑞吉外卖代码全功能优化含源码
- 知道你的成绩单是怎么打印的吗?超长Excel表格1页打印,拯救A4纸
- ASP.NET/C# 控制器Controller的深入理解
- 介绍 7 款神秘的开源中间件!
- 媛明源科普基金倡议发起婴儿日
- 单片机接收到红外对管的数据怎么用c语言程序传给led显示器,通过红外接口实现单片机之间的通信...
热门文章
- Mysql 导入Incorrect string value: ‘\xCF\xF2\xB7\xBD\xB9\xFA‘ for column
- 主流影视网站8合一H5视频源码自动更新数据
- 数据库, 数据仓库, 数据集市,数据湖,数据中台
- c语言 防止sql注入,c#如何防止sql注入?
- 如果软件测试是门艺术,软件测试工程师就是艺术家 -- 浅析ZStack是如何做智能软件测试
- ios13 无法传参_Win版iOS13越狱最新消息汇总丨拼音字体更新
- 安装sqlyog和使用注册码
- 苹果手机绕激活锁之亲身体验
- 人力资源管理系统需求分析说明书
- 为了机器学习把MacBook Pro换成Asus TUF Gaming 全家桶