方法一:使用UUID
public static String getUUID() {
String replaceUUID = UUID.randomUUID().toString().replace("-", "");
return replaceUUID;
}
方法二:用时间(精确到毫秒)+随机数
/**
* 生成订单号(20位):时间(精确到毫秒)+3位随机数
*/
public static synchronized String getOrderNum() {
//时间(精确到毫秒)
DateTimeFormatter ofPattern = DateTimeFormatter.ofPattern("yyyyMMddHHmmssSSS");
String localDate = LocalDateTime.now().format(ofPattern);
//3位随机数
String randomNumeric = RandomStringUtils.randomNumeric(3);
String orderNum = localDate + randomNumeric;
log.info("订单号:{}", orderNum);
return orderNum;
}
参考博客: fhttp://t.csdn.cn/lCQ47