ThreadLocal一般用于某一个线程会话中,用来存储当前线程的数据
记录工具类,如下:
/**
* 本地线程工具类
*/
public class ThreadCache {
/** 本地线程实例 */
private static final ThreadLocal<ThreadContext> THREAD_CACHE = new ThreadLocal<ThreadContext>() {
@Override
protected ThreadContext initialValue() {
return new ThreadContext();
}
};
/**
* 内部类: 存储信息
*/
private static class ThreadContext {
/** 定义属性. */
String userName;
……
}
/**
* 存储示例
*/
public void setUserName(String userName){
THREAD_CACHE.get().userName = userName;
}
/**
* 取值示例
*/
public String getUserName(){
return THREAD_CACHE.get().userName;
}
/**
* 释放本地线程
*/
public static void release() {
THREAD_CACHE.remove();
}
}
本文介绍了一个使用ThreadLocal实现的本地线程工具类ThreadCache,该类通过ThreadLocal存储和获取当前线程的特定数据,如用户名等,适用于线程会话中数据的存储与读取。

被折叠的 条评论
为什么被折叠?



