IdGen.nextCode纯数值类型时long精度优化
This commit is contained in:
@@ -7,7 +7,7 @@ import java.security.SecureRandom;
|
||||
import java.util.UUID;
|
||||
|
||||
import com.jeesite.common.codec.EncodeUtils;
|
||||
import com.jeesite.common.lang.ObjectUtils;
|
||||
import com.jeesite.common.lang.NumberUtils;
|
||||
import com.jeesite.common.lang.StringUtils;
|
||||
|
||||
/**
|
||||
@@ -79,7 +79,7 @@ public class IdGenerate {
|
||||
}
|
||||
String prefix = str.substring(0, lastNotNumIndex + 1);
|
||||
String numStr = str.substring(lastNotNumIndex + 1, str.length());
|
||||
long num = ObjectUtils.toLong(numStr);
|
||||
long num = NumberUtils.isCreatable(numStr) ? Long.valueOf(numStr) : 0;
|
||||
// System.out.println("处理前:"+str);
|
||||
str = prefix + StringUtils.leftPad(String.valueOf(num + 1), numStr.length(), "0");
|
||||
// System.out.println("处理后:"+str);
|
||||
@@ -102,6 +102,7 @@ public class IdGenerate {
|
||||
// System.out.println(nextCode("EC02T099"));
|
||||
// System.out.println(nextCode("EC02T100"));
|
||||
// System.out.println(nextCode("EC02T10A"));
|
||||
// System.out.println(nextCode("1123117153417957377"));
|
||||
//// // 数值型ID重复验证测试
|
||||
//// Set<String> set = SetUtils.newHashSet();
|
||||
//// try{
|
||||
|
||||
Reference in New Issue
Block a user