|
|
@@ -21,6 +21,8 @@ import java.util.Calendar;
|
|
|
import java.util.Date;
|
|
|
import java.util.HashMap;
|
|
|
import java.util.Map;
|
|
|
+import java.util.concurrent.locks.Lock;
|
|
|
+import java.util.concurrent.locks.ReentrantLock;
|
|
|
|
|
|
@Aspect
|
|
|
@Component
|
|
|
@@ -92,9 +94,17 @@ public class JwtTokenAspect {
|
|
|
} catch (MyException e) {
|
|
|
throw new MyException(-505, "token过期");
|
|
|
}
|
|
|
- BaseContextHolder.setUserId(Integer.valueOf(jwt.getClaim("id").asString()));
|
|
|
- BaseContextHolder.setUserName(jwt.getClaim("name").asString());
|
|
|
- BaseContextHolder.setRole(jwt.getClaim("role").asString());
|
|
|
+
|
|
|
+ Lock lock = new ReentrantLock();
|
|
|
+ lock.lock();
|
|
|
+ try {
|
|
|
+ BaseContextHolder.setUserId(Integer.valueOf(jwt.getClaim("id").asString()));
|
|
|
+ BaseContextHolder.setUserName(jwt.getClaim("name").asString());
|
|
|
+ BaseContextHolder.setRole(jwt.getClaim("role").asString());
|
|
|
+ } finally {
|
|
|
+ lock.unlock();
|
|
|
+ }
|
|
|
+
|
|
|
return jwt.getClaims();
|
|
|
}
|
|
|
}
|