对于商城订餐等的互联网项目的订单编号,可优先选择使用数字来做订单编号主键。
因为数据库来说,索引查找性能更好。
然而,你也可以使用UUID
来进行生成,对于数量量不大,并发小的小项目都可以适用。
下面是生成的方法,使用简单规则 时间+随机数
import java.util.Random;
/**
* 生成订单唯一主键,纯数字
*/
public class KeyUtil {
/**
* 生成主键id
* 时间+随机数
* @return
*/
public static synchronized String generateUniqueKey(){
Random random = new Random();
// 随机数的量 自由定制,这是9位随机数
Integer r = random.nextInt(900000000) + 100000000;
// 返回 13位时间
Long timeMillis = System.currentTimeMillis();
// 返回 17位时间
DateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");
String timeStr = sdf.format(new Date());
// 13位毫秒+9位随机数
///return timeMillis + String.valueOf(r);
// 17位时间+9位随机数
return timeStr + r;
}
}
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。