场景描述:
因为是在不同的数据库里,所以不能使用sql联合查询,所以只能采用List封装数据和另一个List封装数据拼接成一个结果集。
方法:
根据共同的字段id,将一个对象List遍历, 放到map集合<id,object1>。然后遍历另外一个对象List,比较id, id相等,取出object1的值,和object2的值,放到新的对象newObject。
R<List<UserVO>> r = adminClient.querySysUserListByReqVo(reqVo);
List<UserVO> userVOList = r.getData();
if(CollectionUtils.isEmpty(userVOList)){
return respDtoIPage;
}
//将userVo对象根据对应的userId放到map
Map<Long,UserVO> userVOMap = new HashMap<>();
// 将list中的数据转成json字符串
String jsonObject= JSON.toJSONString(userVOList);
//将json转成需要的对象
userVOList = JSONObject.parseArray(jsonObject, UserVO.class);
for (UserVO userVO : userVOList) {
userVOMap.put(userVO.getUserId().longValue(),userVO);
userIds.add(userVO.getUserId().longValue(