修复工具类随机数重复的问题

This commit is contained in:
click33 2022-11-16 18:18:03 +08:00
parent 1f99a2efba
commit d2568577ba

View File

@ -28,10 +28,6 @@ import cn.dev33.satoken.exception.SaTokenException;
* *
*/ */
public class SaFoxUtil { public class SaFoxUtil {
/**
* 可以减少线程争用的随机对象
*/
private static final ThreadLocalRandom RANDOM = ThreadLocalRandom.current();
private SaFoxUtil() { private SaFoxUtil() {
} }
@ -64,7 +60,7 @@ public class SaFoxUtil {
String str = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; String str = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
StringBuffer sb = new StringBuffer(); StringBuffer sb = new StringBuffer();
for (int i = 0; i < length; i++) { for (int i = 0; i < length; i++) {
int number = RANDOM.nextInt(62); int number = ThreadLocalRandom.current().nextInt(62);
sb.append(str.charAt(number)); sb.append(str.charAt(number));
} }
return sb.toString(); return sb.toString();
@ -113,7 +109,7 @@ public class SaFoxUtil {
* @return 随机字符串 * @return 随机字符串
*/ */
public static String getMarking28() { public static String getMarking28() {
return System.currentTimeMillis() + "" + RANDOM.nextInt(Integer.MAX_VALUE); return System.currentTimeMillis() + "" + ThreadLocalRandom.current().nextInt(Integer.MAX_VALUE);
} }
/** /**