采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
不同的请求进来 获取到的User都是同一个吗 threadLocal什么时候被回收呢 对thradLocal的用法不是特别了解
threadlocal其实就是与当前线程绑定的一个线程,它的生命周期与当前线程是一致的。
之所以开发的时候使用它来获取用户信息,就是因为SpringMVC本身是线程安全的,每一个Request都会触发一个新的线程。 在这个期间我们绑定一个threadlocal,当response返回时,该threadlocal就会被销毁。
老师 那这里第一个请求访问authcontroller将用户id写入threadLocal,返回response token以后,threadLocal被销毁,那为什么第二个请求访问hello controller的时候能拿到currentUser中的数据呢
因为咱们是每次请求进来都会查一次数据库呀
哦哦 谢谢老师 是我代码看错了 以为是在第一次请求的时候把userId放进threadLocal的 现在理解了 谢谢老师解惑
登录后可查看更多问答,登录/注册
实战Dubbo项目+面试技巧,老司机带你畅游微服务
1.4k 15
1.1k 11
1.4k 9
1.1k 9
3.2k 8