LoginUserContextHolder
LoginUserContextHolder是获取当前用户信息的上下文
Tip:该上下文中的数据是由so-fast-web-starter中的LoginUserInfoFilter进行初始化的;
如发现该上下文中无数据请先确认工程中是否使用了so-fast-web-starter程序包,如未使用请自行维护该上下文的生命周期原则上所有web服务都必须使用so-fast-web-starter程序包
setLoginUserInfo
设置当前线程中的登录用户信息(未使用so-fast-web-starter时需要自行维护该数据)
// 目前LoginUserInfo中提供两个构造函数 // 无用户所属机构(web-starter中默认使用) LoginUserInfo loginUserInfo = new LoginUserInfo(userId, userName, roleList); // 包含用户所属机构 // LoginUserInfo loginUserInfo = new LoginUserInfo(userId, userName, roleList); LoginUserContextHolder.setLoginUserInfo(loginUserInfo); // PS:使用完毕之后记得清除当前用户数据 否则可能会在线程复用的场景会产生一些无法预料的问题
clear
清空当前线程中的登录用户信息数据
LoginUserContextHolder.clear()
getLoginUserInfo
获取当前线程中的登录用户信息
LoginUserContextHolder.getLoginUserInfo() Return: LoginUserInfo { // 用户ID Long userId; // 登录用户名 Long userName; // 组织结构ID Long orgId; // 用户授权角色的编码集合 Long roleList; }
getUserId
获取当前线程中的登录用户Id
LoginUserContextHolder.getUserId() Return: (Long) userId
getUserName
获取当前线程中的登录用户名(非realName)
LoginUserContextHolder.getUserName() Return: (String) userName
getOrgId
获取当前线程中的登录用户所属机构(当前版本暂未支持)
LoginUserContextHolder.getOrgId() Return: (Long) orgId
getRoleList
获取当前线程中的登录用户的角色编码集合
LoginUserContextHolder.getRoleList() Return: (List<String>) roleList