fastjson 序列化工具类
字符串转换成 Map 对象
public static void str2Map() {
MyBean myBean = new MyBean();
myBean.setAge(20);
Map<String, MyBean> strMap = new HashMap<>();
strMap.put("a", myBean);
String str = JSON.toJSONString(strMap);
// value 是个 JSONObject 对象,而不是 MyBean
Map<String, JSONObject> str2Map1 = JSON.parseObject(str, Map.class);
//如果要将 字符串转换成 Map<String,MyBean> map的 kv 感知到具体的类型,需要使用 TypeReference
Map<String,MyBean> str2Map2 = JSON.parseObject(str,new TypeReference<Map<String, MyBean>>(String.class, MyBean.class) {});
System.out.println(str2Map1);//str2Map1 的 value 是个 JSONObject 对象。
System.out.println(str2Map2);//str2Map2 的 value 是 MyBean 对象,有具体的类型。
}
使用 com.alibaba.fastjson.JSON#parseObject(java.lang.String, java.lang.Class<T>)
将字符串转换成对象时,一定要注意:转出来的对象是否符合预期。当字段对不上时,转换不会抛异常,而是转换成默认的对象,这里需要谨慎。
//myBean 不会是 null 也不会报错,而是会是一个默认的对象。
MyBean myBean = JSON.parseObject("{}", MyBean.class);
public class MyBean {
private int age = 10;
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
2016-07-23 组合问题与动态规划的联系之应用
2016-07-23 动态规划之Fib数列类问题应用