写了一个Webservice服务,其中产生主键用到了如下方法,在本地用soapUI模拟多线程,出现主键重复:
public static String generateSequenceID() throws Exception {
String dateTime = DateOper.date2Str(new Date(), "yyyyMMddhhmmss");
String uuid = UUID.randomUUID().toString().replaceAll("-", "").toUpperCase();
String ranEight = String.format("%08d", new Random().nextInt(99999999));
return dateTime + uuid + ranEight;
}是什么问题导致的?是因为本地导致UUID在高并发下会重复吗?测试时最多允许10个进程。