public class ThreadLocalContext extends Object
存储于ThreadLocal的Map, 用于存储上下文.
但HashMap的存储其实较为低效,在高性能场景下可改为EnumMap 1.先定义枚举类,列举所有可能的Key 2.替换contextMap的创建语句,见下例 3.修改put()/get()中key的类型 private static ThreadLocal> contextMap = new ThreadLocal>() { @Override protected Map initialValue() { return new EnumMap(MyEnum.class); } };
1.先定义枚举类,列举所有可能的Key 2.替换contextMap的创建语句,见下例 3.修改put()/get()中key的类型
private static ThreadLocal> contextMap = new ThreadLocal>() { @Override protected Map initialValue() { return new EnumMap(MyEnum.class); } };
ThreadLocalContext()
static <T> T
get(String key)
static void
put(String key, Object value)
reset()
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
public ThreadLocalContext()
public static void put(String key, Object value)
public static <T> T get(String key)
public static void reset()
Copyright © 2019. All rights reserved.