采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
是不是可以不用定义HttpFilter ,因为HttpInterceptor的preHandle也可以在请求前将线程添加到ThreadLocal中 RequestHolder.add(Thread.currentThread().getId());
你好,就这个case而言是ok的,课程里这样演示一是为了演示filter和interceptor在springboot里的使用,另一个原因是我们习惯区分filter和interceptor,filter里根据指定的接口将需要的数据准备好,并对不满足条件或没权限的请求拦截住,而interceptor很多时候用来监听所有接口,做一些统一的处理比如记录调用日志统计接口耗时等。课程里的这个场景其实用哪个都ok,不具体明显的特征,权限课程里的例子会更有些说服力。filter拦截住需要登录的接口,取出用户信息放到threadlocal里,然后在接口里随时可以使用用户信息,而interceptor则负责在所有接口结束时移除相关信息防止内存泄漏
非常感谢!
老师,你这样区分感觉没有意义啊?完全可以在同一个里面完成
能解释下你这样区分,有什么意义吗?
这个不是我区分,我说的是习惯上这样使用。本身是可以写到一起的,是问题里想了解下区别
登录后可查看更多问答,登录/注册
构建完整并发与高并发知识体系,倍增高薪面试成功率!
1.7k 1
1.1k 18
1.2k 15
3.6k 12
1.2k 12