生成分布式项目批次号
生成分布式项目批次号
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.UUID;
import java.util.logging.Logger;public class getBatchNoDemo {private static final String DATE_PATTERN = "yyyyMMddHHmmssSSS";private static int batchNoByIpIndex = 100;private static String lastyyyyMMddHHmmssSSS="";public synchronized static String getBatchNo(){SimpleDateFormat dateFormat = new SimpleDateFormat(DATE_PATTERN);String nowStr = dateFormat.format(new Date());String localIp = System.getProperty("spring.cloud.inetutils.preferred-networks");if (localIp == null || localIp.length() <= 0){localIp = System.getProperty("JVM_DEFAULT_BIND_IP");}if(localIp == null || localIp.length() <= 0){localIp = System.getProperty("SERVICE_IP");}if(localIp == null || localIp.length() <= 0){localIp = UUID.randomUUID().toString();}int start = localIp.indexOf(".");String ipSub = localIp.substring(start);nowStrif (nowStr.compareTo(lastyyyyMMddHHmmssSSS) < 0){throw new RuntimeException("时钟已回拨");}if (lastyyyyMMddHHmmssSSS.equals(nowStr)){if(batchNoByIpIndex >= 999){try {Thread.sleep(1);}catch (Exception e){}nowStr = dateFormat.format(new Date());batchNoByIpIndex = 100;lastyyyyMMddHHmmssSSS = nowStr;} else {batchNoByIpIndex++;}} else {lastyyyyMMddHHmmssSSS = nowStr;batchNoByIpIndex = 100;}return nowStr + localIp.substring(start) + batchNoByIpIndex;}}
分布式项目,按生成的批次号对数据捞数并对其进行处理
将同一个批次号生成相似,由于对提升捞数速度,想想索引建立的原理
生成分布式项目批次号相关推荐
- SAP批次号生成时,最后两位顺序号超过了99,需要和字母和数字组合生成新的批次号
背景:项目中,批次号的最后两位是顺序号,最后两位顺序号累加超过99会引起批次号重复,需要和字母结合生成批次号,比如:AAAAAA00.AAAAAA01.AAAAAA02.AAAAAA03......A ...
- P3项目全球模板狗血设置之二 --- 移动类型523收货不能自动创建批次号
P3项目全球模板狗血设置之二 --- 移动类型523收货不能自动创建批次号 在P3项目中,因项目实施范围限制等诸多原因,对于工厂的自制品,在SAP系统上使用MIGO + 523 移动类型组合来完成收货 ...
- js生成批次号_一文知晓MES系统中的批次管控功能
更多精彩,请点击上方蓝字关注我们! MES系统中的生产批次管理,在制造企业特别是流程制造行业,存在一些需要按批号管理的原材料.半成品和成品统一称它们为料号,这些料号在库房和加工现场都有明确的批次标识并 ...
- js生成批次号_【管理】MES系统中的批次管理
精益生产|智能制造|管理前沿我们来自丰田,分享生产技术与管理方法 立即加星标,第一时间看好文 来源|MES百科 全文总计2000字,需阅读5分钟,以下为正文: MES系统可以帮助制造企业解决很多生产管 ...
- 【java生成批次号】
根据当前时间加随机数生成批次号 一.代码实现 二.打印结果 一.代码实现 通过当前时间年-月-日-时-分-秒,加上6为随机数,生成批次号 import java.text.DateFormat; im ...
- 如何按照DocNum+LineNum+流水号生成批次号
概述 按照其它字段如:主表的DocDate.CrdID.细表的ItmID.ItmName等无法生成想要的批次号,本文将介绍如何按照DocNum+LineNum+流水号生成批次号. 在介绍如何设置之前, ...
- 根据时间生成分配批次号
1 /** 2 * 根据当前时间生成分配批次号 3 * 4 * @return 5 */ 6 private String createBatchNo() { 7 // 批次号第一部分:时间 8 Da ...
- java 支付宝退款批次号生成
/** * 支付宝批次号生成 * 生成规则:当天日期[8位]+序列号[3至24位],如:201008010000001 * @return */ pri ...
- 当前日期的周一,下周日期,下月日期;批次号生成
package cn.weixiuhui.comm.util;import java.text.SimpleDateFormat; import java.util.Calendar; import ...
最新文章
- numpy库:常用基本
- Android 导致OOM的常见原因
- openoffice linux 目录,Linux之安装OpenOffice
- 1.3 程序示例--梯度下降-机器学习笔记-斯坦福吴恩达教授
- c++随机打乱数组_NumPy数组基本介绍
- Android代码设置角标,Android上的Badge,快速实现给应用添加角标
- Mybatis异常_02_Result Maps collection already contains value for
- 将计算机设置成交换机主机名,交换机命令
- 收发邮件服务器错误,邮件系统收发邮件报错汇总——错误代码550
- Variant 数组
- python locust 性能测试:HOOKS钩子方法
- Python内置GUI模块Tkinter的几点笔记
- python 在window 系统 连接并操作远程 oracle 数据库
- HIT软件构造复习 lab篇
- 麦克风的计算机英语词汇,[转帖]麦克风计划:神舟五号载人飞船词汇
- Oracle in 不能超过1000的解决方案
- 关于PX像素、PT点数、CM厘米、MM毫米之间的换算
- 碗中有米,心中有他,他解决的不只是吃饭问题......
- Luatos学习:Air101点灯
- 8月教材有变,如何应对PMP考试