ThreadLocal 用作保存每个线程独享的对象,为每个线程都创建一个副本,这样每个线程都可以修改自己所拥有的副本, 而不会影响其他线程的副本,确保了线程安全。
在项目中前后端分离,用户登录后,用户的信息会保存到token中;我们可以在拦截器中解析token,获取用户信息,然后存入到ThreadLocal中,那么当前线程在任何地方如何需要使用用户信息都可以使用ThreadLocal的get()方法来获取。
自我语言描述ThreadLocal的实际应用场景:
ThreadLocal用来保存每个线程独享的对象;举一个例子,在用户登录后,用户的信息保存token中,我们可以在拦截器中获取token,得到用户信息,然后存入到ThreadLocal中,那么线程执行任何方法的时候都可以通过ThreadLocal获取到到这个用户独有的信息。