类 ThreadLocalUtils


  • public class ThreadLocalUtils
    extends java.lang.Object
    ThreadLocal 工具类,通过在ThreadLocal存储map信息,来实现在ThreadLocal中维护多个信息
    e.g. ThreadLocalUtils.put("key",value);
    ThreadLocalUtils.get("key");
    ThreadLocalUtils.remove("key");
    ThreadLocalUtils.getAndRemove("key");
    ThreadLocalUtils.get("key",()->defaultValue);
    ThreadLocalUtils.clear();
    • 方法概要

      所有方法 静态方法 具体方法 
      修饰符和类型 方法 说明
      static void clear()
      清空ThreadLocal
      static <T> T get​(java.lang.String key)
      从ThreadLocal中获取值
      static <T> T get​(java.lang.String key, java.util.function.Supplier<T> supplierOnNull)
      从ThreadLocal中获取值,并指定一个当值不存在的提供者
      static <T> T getAndRemove​(java.lang.String key)
      获取一个值后然后删除掉
      static <T> T put​(java.lang.String key, T value)
      设置一个值到ThreadLocal
      static void remove​(java.lang.String key)
      删除参数对应的值
      • 从类继承的方法 java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • 方法详细资料

      • put

        public static <T> T put​(java.lang.String key,
                                T value)
        设置一个值到ThreadLocal
        类型参数:
        T - 值的类型
        参数:
        key - 键
        value - 值
        返回:
        被放入的值
      • remove

        public static void remove​(java.lang.String key)
        删除参数对应的值
        参数:
        key - Key
        另请参阅:
        Map.remove(Object)
      • clear

        public static void clear()
        清空ThreadLocal
      • get

        public static <T> T get​(java.lang.String key)
        从ThreadLocal中获取值
        类型参数:
        T - 值泛型
        参数:
        key - 键
        返回:
        值, 不存在则返回null, 如果类型与泛型不一致, 可能抛出ClassCastException
      • get

        public static <T> T get​(java.lang.String key,
                                java.util.function.Supplier<T> supplierOnNull)
        从ThreadLocal中获取值,并指定一个当值不存在的提供者
        类型参数:
        T - T
        参数:
        key - key
        supplierOnNull - supp
        返回:
        T
      • getAndRemove

        public static <T> T getAndRemove​(java.lang.String key)
        获取一个值后然后删除掉
        类型参数:
        T - 值类型
        参数:
        key - 键
        返回:
        值, 不存在则返回null