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数据的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 对cookie和子cookie操作的封装
- 下一篇: 累觉不爱