上图是数据表查询,返回Map类型的XML映射写法
上图写了个@MapKey注解,不写会报错
这是最终调试的参数值,是个单条Map类型,有动态的key,有value,value是一个单条数据表记录集合,
这个怎么解析呢?无论我尝试了多种途径,都不好用,
我用fastjson解析也不行。
请教大神!
我尝试的操作
//获取登陆用户的id和openid
Map<String, Object> wxUserInfo = wxLoginMapper.getWxUserByOpenidInfo(params.getOpenId());
String jsonString = "";
for(String key : wxUserInfo.keySet()){
jsonString = JSON.toJSONString(wxUserInfo.get(key));
}
log.info(jsonString);
code: 500
message: "操作失败,java.lang.Integer cannot be cast to java.lang.String"
result: null
success: false
timestamp: 1735821282293
针对回答 **
解析出来是这样子的,我主要想获取openid的值,这个字符串怎么获取openid的值呢,关键前面的key是动态的?
思路排查
Mapper接口和XML配置:
添加fastjson依赖:
在Spring Boot应用中使用Mapper,在Service类中解析JSON字符串并提取openid的值:
在Controller中调用Service: