為啥用uuid而不用自增長方式呢?
首先為什麼要用uuid控制主鍵呢?
相比較自動增長的int類型的主鍵有什麼好處?
當資料量多、登入使用者量多、遇到高并發的時候,自增長不利于維護,也不利于拓展,而且也有可能出現幾個人同時插入自增長的同一個id 比如自增長到了100,ABC三個使用者同時插入的時候會不會出現同時插入101?或者覆寫101資料呢?這就是弊端。
然而用uuid控制的話 當調用的插入的時候才自動生成一個識别号。。。
生成32位的uuid字元串
<span style="font-size:14px;">package com.cmcc.tools;
import java.util.UUID;
public class UUIDTool {
public UUIDTool() {
}
/**
* 自動生成32位的UUid,對應資料庫的主鍵id進行插入用。
* @return
*/
public static String getUUID() {
/*UUID uuid = UUID.randomUUID();
String str = uuid.toString();
// 去掉"-"符号
String temp = str.substring(0, 8) + str.substring(9, 13)
+ str.substring(14, 18) + str.substring(19, 23)
+ str.substring(24);
return temp;*/
return UUID.randomUUID().toString().replace("-", "");
}
public static void main(String[] args) {
// String[] ss = getUUID(10);
for (int i = 0; i < 10; i++) {
System.out.println("ss[" + i + "]=====" + getUUID());
}
}
}
</span>
