79 lines
1.7 KiB
Java
79 lines
1.7 KiB
Java
package com.adc.da.util;
|
|
|
|
|
|
|
|
import cn.hutool.core.lang.Snowflake;
|
|
import cn.hutool.core.util.IdUtil;
|
|
import cn.hutool.core.util.RandomUtil;
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
|
|
public class UUIDUtils {
|
|
|
|
public static Snowflake snowflake;
|
|
|
|
public static Snowflake getSnowflake() {
|
|
return snowflake;
|
|
}
|
|
|
|
/**
|
|
* 服务编码
|
|
*/
|
|
private static long serverCode;
|
|
|
|
/**
|
|
* 中心端编码
|
|
*
|
|
*/
|
|
private static long appCenter;
|
|
|
|
@Value("${application.code}")
|
|
public static void setServerCode(long serverCode) {
|
|
UUIDUtils.serverCode = serverCode;
|
|
}
|
|
|
|
@Value("${application.center}")
|
|
public static void setAppCenter(long appCenter) {
|
|
UUIDUtils.appCenter = appCenter;
|
|
}
|
|
|
|
|
|
public static void setSnowflake(Snowflake snowflake) {
|
|
IdUtil.getSnowflake(serverCode,appCenter);
|
|
}
|
|
|
|
public static String randomUUID10() {
|
|
return RandomUtil.randomString(10);
|
|
}
|
|
|
|
public static String randomUUID20() {
|
|
return RandomUtil.randomString(20);
|
|
}
|
|
|
|
public static String randomUUID(int length) {
|
|
return RandomUtil.randomString(length);
|
|
}
|
|
|
|
public static String randomSnowflakeID(){
|
|
return snowflake.nextIdStr();
|
|
}
|
|
|
|
|
|
public static String getUUIDPath(String uuid){
|
|
StringBuilder builder=new StringBuilder();
|
|
builder.append("/");
|
|
builder.append((uuid.substring(0, 3).hashCode())%100+"").append("/");
|
|
builder.append((uuid.substring(7,10).hashCode())%100+"").append("/");
|
|
builder.append((uuid.substring(11,14).hashCode())%100+"").append("/");
|
|
return builder.toString();
|
|
}
|
|
|
|
public static String getAttTable(){
|
|
int nextInt = RandomUtil.randomInt(10)+1;
|
|
StringBuilder builder=new StringBuilder();
|
|
builder.append("ATT_FILE_").append(String.format("%02d", nextInt));
|
|
return builder.toString();
|
|
}
|
|
|
|
|
|
}
|