可能有人问过这个问题,但是我找不到完美的解决方案,所以我在这里发布。 我必须自动化销售人员应用程序,并且每次执行脚本时都必须创建新的客户数据。 我要创建一个这样的名称,使客户名称是唯一的,例如:客户123等。
用Java实现此目标的最佳方法是什么。 我搜索了SO和Google,但他们只提供了字母数字随机字符串,并且我不希望我的客户编号显得笨拙。
答案 0 :(得分:0)
实际上有几种方法:
在脚本执行开始时删除具有给定名称的所有先前用户,然后重新创建具有相同名称的用户。这样,您就可以重用他们的名字。
获取所有用户,对其进行排序,查看最后使用的号码,然后使用下一个号码。
这两个选项实际上都不取决于Java功能,而是取决于您正在创建和维护的名称逻辑。下面的两个选项生成一些整数ID:
使用日期/时间作为您的电话号码。例如:
SimpleDateFormat timestamp = new SimpleDateFormat("yyyyMMddHHmmssSSS");
String username = "user" + timestamp.format(new Date());
这将为您提供user20181122101458234
之类的名称(毫秒级唯一),并且不是随机的。
您还可以将Java的UUID用作您的号码(请参见提示here):
String username = "user" + new BigInteger(UUID.randomUUID().toString().replaceAll("-", ""), 16).toString()
这将生成类型为user[some big number]
的名称,该名称非常唯一