title: 在web环境下中使用ThreadLocal出现数据错乱问题及解决
categories: 书籍
tags: java高手-代码篇
date: 2023-03-01 11:12:01
问题原因
web开发中Tomcat复用线程,我们不清理threadlocal中的数据就会出现数据错乱问题,常见于拦截器中加入请求的额外数据。
解决方案
ThreadLocal单独维护一个类,在拦截器中处理完请求的位置 即afterCompletion方法里面去清除Threadlocal的数据 xxx.remove();