package com.rongchang.ziling.game.util;import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.UUID;
import java.util.concurrent.atomic.AtomicInteger;/*** 高并发情况下获取订单号** @author liuhongbing**/
public final class OrderUtil {private static final SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMddHHmmss");private static final AtomicInteger atomicInteger = new AtomicInteger(1000000);/*** 创建不连续的订单号** @param no 数据中心编号* @return 唯一的、不连续订单号*/public static synchronized String getOrderNoByUUID(String no) {Integer uuidHashCode = UUID.randomUUID().toString().hashCode();if (uuidHashCode < 0) {uuidHashCode = uuidHashCode * (-1);}String date = simpleDateFormat.format(new Date());return no + date + uuidHashCode;}/*** 获取同一秒钟 生成的订单号连续** @param no 数据中心编号* @return 同一秒内订单连续的编号*/public static synchronized String getOrderNoByAtomic(String no) {atomicInteger.getAndIncrement();int i = atomicInteger.get();String date = simpleDateFormat.format(new Date());return no + date + i;}public static void main(String[] args) {// 测试多线程调用订单号生成工具try {for (int i = 0; i < 200; i++) {Thread t1 = new Thread(new Runnable() {public void run() {String aa=OrderUtil.getOrderNoByUUID("");System.out.println(aa);}}, "at" + i);t1.start();Thread t2 = new Thread(new Runnable() {public void run() {String aa=OrderUtil.getOrderNoByUUID("");System.out.println(aa);}}, "bt" + i);t2.start();}} catch (Exception e) {e.printStackTrace();}}}

创建唯一订单号,真的不重复 JMeter 亲测相关推荐

  1. MySQL高并发生成唯一订单号的方法

    高并发下生成唯一订单号的存储过程 这个是用mysql写的存储过程,搭配里面一张数据表使用,达到高并发情况下获得唯一订单号的目的:原理:按照一定规则生成订单号后,把订单号插入数据表后,再返回给用户,由于 ...

  2. 高并发分布式系统中生成全局唯一订单号

    高并发分布式系统中生成全局唯一订单号 我了解的方案如下-------------------------- 1.  使用数据库自增Id 优势:编码简单,无需考虑记录唯一标识的问题. 缺陷: 1)    ...

  3. js 根据时间生成唯一订单号

    一般做唯一编号的时候,可以使用guid或者uuid的包直接生成,但是我希望唯一编号能够反应生成的时间信息,所以就准备使用日期+随机值来构造,代码如下: const tradeNo = function ...

  4. java生成唯一订单号

    /*** 生成唯一订单号* 规则:四位随机数+"M"+格式化到秒的时间+"R"+六位随机数*/public static String getBillCode( ...

  5. php 数字 字母组合,PHP生成数字字母组合或纯数字的唯一订单号

    这篇文章主要给大家介绍了一位网友PHP生成唯一订单号的思路和示例,感觉非常不错,需要的朋友可以参考下 在网上找了一番,发现这位同学的想法挺不错的,redtamo,具体的请稳步过去看看,我作简要概述,该 ...

  6. 高并发下唯一订单号生成器【16位数字订单号】

    参考:常用的分布式ID方案 快速查询设计 带业务含义的编号,可以用来进行快速查询设计 高并发下唯一订单号生成思考? 订单号3个性质:1.唯一性 2.不可推测性 3.效率性 可选方案一  本方案使用的是 ...

  7. php 不重复订单号,php如何生成不重复的订单号,php不重复订单编号

    php如何生成不重复的订单号PHP如何生成重复的订单号,php生成不重复订单号的方法如下:1.利用数据库的主键值生成自增订单号:2.实现"日期自增号"的订单号:3.生成随机订单号: ...

  8. mysql 唯一索引出现重复数据_MySQL 创建唯一索引忽略对已经重复数据的检查

    MySQL 创建唯一索引忽略对已经重复数据的检查 在创建唯一索引的基础上加上关键字"IGNORE "即可. # 重复数据 mysql> select aid,count(ai ...

  9. C# 生成唯一订单号

    根据GUID+DateTime.Now.Ticks生产唯一订单号. /// <summary>/// 生成唯一数/// </summary>public class Uniqu ...

最新文章

  1. 爸爸和无我编程十条诫律
  2. VC++简单实现工具软件随鼠标移动画线的功能
  3. 一张图搞定OAuth2.0
  4. Android listview与adapter用法
  5. logging 日志输出乱码 info_接口自动化测试中logging实际用法
  6. asp.net中实现群发邮件功能
  7. code回归采访哭 ladies_南太铉直播下跪?星船新男团?Mina归队?Kingdom来了?itzy回归?...
  8. WebDriverAgent安装
  9. 2022最新短视频去水印解析API接口支持各大小程序平台分享
  10. 【Unity基础】Unity打包exe
  11. C/C++实现关闭命令行快速编辑模式(Windows系统)
  12. POP3 SMTP 协议分析学习笔记
  13. openstack controller ha测试环境搭建记录(二)——配置corosync和pacemaker
  14. 怎么用计算机画正弦函数图像,怎样用几何画板作正弦函数图象
  15. 2022年上半年财神爷最爱照顾的星座
  16. 面试题----单链表实现栈
  17. clickhouse 离线安装
  18. 即将上演的5G测量仪器大战
  19. 非SDDC不可——深信服“0001号”的故事
  20. 音视频相关研究-英年早逝的雷宵骅在读博士的项目

热门文章

  1. 【海岛吉他3】吉他调音—调音器的使用
  2. Redis和RabbitMQ笔记
  3. Linux系统中管理用户登录及登录信息的处理
  4. java毕业设计MVC的时鲜蔬菜配送系统Mybatis+系统+数据库+调试部署
  5. 初探MITM-中间人攻击
  6. 函数式javascript_JavaScript第二部分中的函数式编程
  7. 数据库的分类及其对比(关系型与非关系)【详细】
  8. 2020-04-15
  9. 【35】图片转ASCII和字符转成艺术字
  10. 淘宝直通车钻展测图怎么做?大神导航,一个神奇的网站,从此开启大神之路!