首先,订单号有3个性质:1.唯一性 2.不可推测性 3.效率性 唯一性和不可推测性不用说了,效率性是指不能频繁的去数据库查询以避免重复。 况且满足这些条件的同时订单号还要足够的短。 我在java下定制的订单号生成方式如下: int r1=(int)(Math.random()*(10));//产生2个0-9的随机数 int r2=(int)(Math.random()*(10)); long now = System.currentTimeMillis();//一个13位的时间戳 String paymentID =String.valueOf(r1)+String.valueOf(r2)+String.valueOf(now);// 订单ID 目前规则来看,两个人在同一微秒提交订单重复的概率为1% 订单效果:251393292999921
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/290638.html