public Map<String, Object> getUserInfo(String token) { Object obj=redisTemplate.opsForValue().get(token); if(obj != null){ User user = JSON.parseObject(JSON.toJSONString(obj),User.class); Map<String, Object> data = new HashMap<>(); data.put("name",user.getUsername()); data.put("avatar",user.getAvatar()); List<String> roleList = this.getBaseMapper().getRoleNamesByUserId(user.getId()); data.put("roles", roleList); return data;
这段代码看起来是一个getUserInfo方法,它接受一个token作为参数,并返回一个包含用户信息的Map对象。
在这段代码中,它首先通过使用redisTemplate从缓存中获取与token对应的对象。然后,它使用JSON.parseObject方法将获取到的对象转换为User类的实例。JSON.parseObject方法用于将JSON字符串转换为Java对象。
接下来,它创建一个空的HashMap对象data,并将用户的用户名和头像信息放入该HashMap中。然后,它调用getRoleNamesByUserId方法获取用户的角色列表,并将角色列表放入HashMap中。
最后,它返回这个包含用户信息的HashMap对象。
请注意,这段代码使用了JSON类的parseObject方法,所以确保你的代码中导入了正确的JSON类库。另外,确保redisTemplate和getBaseMapper方法也是正确配置和实现的。
public void getUserInfo(Map<String, Object> map, TclCallBack<?> tclCallBack) { HttpManager.getInstance().request(HttpMethod.GET, RequestEntity.get(TclApiPath.GET_USER_INFO, map), HttpResponseHelper.create(tclCallBack)); }
这段代码看起来是一个 GET 请求,用于获取用户信息,其中的参数是一个 Map 对象,包含了请求的相关参数,例如用户 ID 等。此外,还传入了一个 TclCallBack 对象,用于处理请求的返回结果。具体的请求逻辑由 HttpManager 类完成,它会根据 HttpMethod 枚举值来确定请求方法,然后调用 RequestEntity.get() 方法构造请求实体,并将其传给 HttpResponseHelper.create() 方法处理请求的返回结果。
在Spring MVC中,JSON类型的数据如何交互?请按照返回实体对象、ArrayList集合、Map<String,Object>集合以及List<Map<Spring,Object>>集合举例说明
在Spring MVC中,JSON类型的数据交互通常使用Spring提供的Jackson库实现,具体实现步骤如下:
- 返回实体对象
首先需要在Controller方法上添加@ResponseBody注解,表示将返回的数据转换成JSON格式。例如:
@RequestMapping("/getUser")
@ResponseBody
public User getUser(int id){
User user = userService.getUserById(id);
return user;
}
这样就可以将User对象转换成JSON格式返回给前端。
- ArrayList集合
如果要返回ArrayList集合,则只需要将集合作为Controller方法的返回值即可。例如:
@RequestMapping("/getAllUsers")
@ResponseBody
public List<User> getAllUsers(){
List<User> userList = userService.getAllUsers();
return userList;
}
这样就可以将List
- Map<String,Object>集合
如果要返回Map<String,Object>集合,则同样将集合作为Controller方法的返回值即可。例如:
@RequestMapping("/getUserInfo")
@ResponseBody
public Map<String,Object> getUserInfo(int id){
User user = userService.getUserById(id);
Map<String,Object> userInfo = new HashMap<>();
userInfo.put("id",user.getId());
userInfo.put("name",user.getName());
userInfo.put("age",user.getAge());
return userInfo;
}
这样就可以将Map<String,Object>对象转换成JSON格式返回给前端。
- List<Map<String,Object>>集合
如果要返回List<Map<String,Object>>集合,则同样将集合作为Controller方法的返回值即可。例如:
@RequestMapping("/getAllUserInfo")
@ResponseBody
public List<Map<String,Object>> getAllUserInfo(){
List<User> userList = userService.getAllUsers();
List<Map<String,Object>> userInfoList = new ArrayList<>();
for(User user : userList){
Map<String,Object> userInfo = new HashMap<>();
userInfo.put("id",user.getId());
userInfo.put("name",user.getName());
userInfo.put("age",user.getAge());
userInfoList.add(userInfo);
}
return userInfoList;
}
这样就可以将List<Map<String,Object>>对象转换成JSON格式返回给前端。
相关推荐
















