mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-05-17 00:08:35 +08:00
update
This commit is contained in:
@@ -147,15 +147,12 @@ public class IdUtils {
|
||||
* 生成八位会员id
|
||||
*/
|
||||
public static String getMemberId() {
|
||||
long id = Long.parseLong(SnowflakeIdWorker.getSnowflakeId());
|
||||
StringBuilder sb = new StringBuilder(id + "");
|
||||
StringBuilder reverse = sb.reverse();// 将id翻转:我们发现id很长,且高位很长部分是一样的数
|
||||
id = new Long(reverse.toString()) / 1000;// 切去部分长度
|
||||
while (id > 100000000) {
|
||||
id /= 10;
|
||||
}
|
||||
Integer num = Integer.parseInt(id + "");
|
||||
return String.valueOf(num);
|
||||
long snowflakeId = Long.parseLong(SnowflakeIdWorker.getSnowflakeId());
|
||||
|
||||
// 对雪花 ID 做轻量混洗,再压缩到 8 位数字区间,分布比原来的“反转后截断”更均匀。
|
||||
long mixed = snowflakeId ^ (snowflakeId >>> 33) ^ (snowflakeId >>> 17);
|
||||
long memberId = Math.floorMod(mixed, 90000000L) + 10000000L;
|
||||
return String.valueOf(memberId);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user