如何让多台单机系统生成编号互相不重复

2025-05-05 17:59:57
推荐回答(1个)
回答1:

Calendar calendar = Calendar.getInstance();
System.out.println("现在:"+calendar.getTime().getTime());
calendar.add(Calendar.YEAR, 10);
System.out.println("10年后:"+calendar.getTime().getTime());输出:现在:年后:如果用时间戳,截取后面12位,不要第一位,18年内都不会有大问题,不过这样的话,你的生成ID的方法就得同步,避免高并发的时候可能出现的相同ID(理论上很有可能的,虽然1毫秒内出现生成多个订单的几率很小)
建议使用yyMMdd 6位日期,加上6位增长的数字,比如,,或者直接12位增长的数字,在数据库建个序列去处理就好。