我现在实现得方法
//返回map数据
public Map<String, Object> getAuthentication() {
//获取token
HttpServletRequest request=((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String token = request.getHeader( "token" );
//根据token解析jwt
String Id = JWT.decode(token).getAudience().get(0);
Long userId = Long.valueOf( Id );//获取用户id
//根据返回得用户id查询该用户得详细
user.setId(userId);//传输用户id
User userList = userMapper.selectOne(user);//根据传输得用户id查询用户数据
String unionId = userList.getUnionId();//获取用户的微信unionId
String openid = userList.getOpenid();//获取用户的微信Openid
Map<String , Object> map = new HashMap<>( );
map.put( "userId", userId);//返回用户敏感数据
map.put( "unionId", unionId);//返回用户敏感数据
map.put( "openid", openid);//返回用户敏感数据
return map;
}
但是,有大佬说我这种方法不好每次都要查询数据库,以下是大佬得截图
请问,大佬说得方法是怎么样得,有类似得文档吗或者我应该怎么修改这个方法呢