package com.xiaopeng.trafficControl.util;
import java.security.MessageDigest;
/**
* SHA1算法计算散列值的ThreadLocal,避免多线程场景下的线程安全问题
*/
public class ThreadLocalSHA1 {
private static final ThreadLocal localFormat = new ThreadLocal() {
protected MessageDigest initialValue() {
try {
return MessageDigest.getInstance("SHA1");
} catch (Exception e) {
System.err.println(SHA1Util.class.getName() + "初始化失败,MessageDigest不支持SHA1Util。");
e.printStackTrace();
return null;
}
};
};
/** 获取当前线程对应的实例 */
public static MessageDigest current() {
return localFormat.get();
}
}