貼代碼:
/**
* 生成訂單號
* yyyyMMddHHmmss 6位隨機 4位用戶id
* @return
*/
public static String getGenerateOrderNo(Long userId){
String time = new SimpleDateFormat("yyyyMMddHHmmss").format(new Date());
StringBuffer stringBuffer = new StringBuffer(userId.toString());
//id長度大於4 取後四位
if(stringBuffer.length()>4){
stringBuffer = new StringBuffer(stringBuffer.substring(stringBuffer.length()-4,stringBuffer.length()));
}
//長度小於4 補全4位
while (stringBuffer.length()<4){
stringBuffer.insert(0,"0");
}
return time+RandomUtil.getNumber(6)+stringBuffer.toString();
}
算了一下,併發下id小於4位數,唯一性很強,超過4位數的id,20190929124569--126547--0034 假設某一毫秒同時要進來9999*