博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
权限管理系统 ThreadLocal的使用:在同一线程中获取用户信息
阅读量:2346 次
发布时间:2019-05-10

本文共 1068 字,大约阅读时间需要 3 分钟。

ThreadLocal的使用:在同一线程中获取用户信息

/*****************************************************************************************/

public class ThreadUtils implements Runnable {

private static class ThreadUtilsHolder {

private static final ThreadUtils INSTANCE = new ThreadUtils();

}

private ThreadUtils() {

}

public static final ThreadUtils getInstance() {

return ThreadUtilsHolder.INSTANCE;

}

private User user;

private final ThreadLocal<User> userId = new ThreadLocal<User>() {

@Override

protected User initialValue() {

return user;

}

};

public void setUserId(User user) {

this.user = user;

}

public User getUserId() {

return userId.get();

}

@Override

public void run() {

}

}

/*********************************************************************************************************/

登录时将用户信息保存在ThreadLocal中,并启动线程

ThreadUtils Tutils =  ThreadUtils.getInstance();

Thread thread = new Thread(Tutils);

Tutils.setUserId(loginuser);

thread.start();

在切面中获取线程中的用户信息

ThreadUtils Tutils = ThreadUtils.getInstance();

public User getUser() {

User user = Tutils.getUserId();

return user;

}

转载地址:http://zpsvb.baihongyu.com/

你可能感兴趣的文章
浅入深出 MySQL 中事务的实现
查看>>
UML总结(对九种图的认识和如何使用Rational Rose 画图)
查看>>
Java中使用HttpRequest获取用户真实IP地址端口
查看>>
easyUI下拉列表点击事件的使用
查看>>
js遍历map
查看>>
单例模式
查看>>
JDBC连接数据库核心代码
查看>>
java生成随机汉字
查看>>
Java反射的基本应用
查看>>
HTML5常用标签
查看>>
where 1=1影响效率以及having和where的区别
查看>>
资源链接
查看>>
注册中心Eureka页面添加用户认证
查看>>
spring源码
查看>>
上传jar包到nexus私服
查看>>
lambda和抽象类
查看>>
idea自定义文档注释模板
查看>>
Enterprise Architect 生成项目类图
查看>>
idea导出配置
查看>>
JVM学习资料收集
查看>>