版权声明:本文为博主原创文章,转载注明出处。有需要请联系[email protected] https://blog.csdn.net/weixin_42749765/article/details/84778172
思路:
1.获取当前服务器唯一id
2.获取当前时间戳
3.获取当前uuid
目的:
可以避免多台同型号服务器跑大数据的时候发生相同id的问题
package com.uitl;
import java.util.UUID;
/**
* 生成文件集群服务器唯一id
*
* @author yushen
*
*/
public class OnlyIdUtils {
/**
* 获取集群服务器唯一id
*
*/
private static String SERVER_ID = "009";
/**
* 生成集群唯一方法id
*
* @param filename
* @return
*/
public static String getUUIDName(String filename){
// 先查找
int index = filename.lastIndexOf(".");
// 截取
String Ending = filename.substring(index, filename.length());
// 唯一 字符串 fsd-sfsdf-sfsd-sdfsd
String uuid = UUID.randomUUID().toString().replace("-", "");
//返回系统时间戳加uuid
return SERVER_ID + System.currentTimeMillis() + uuid + Ending;
}
/**
* 启动
* @param args
*/
public static void main(String[] args) {
//图片名称
String filename = "avc.jpg";
//输出唯一图片id
System.out.println(getUUIDName(filename));
}
}