json的转来转去-创新互联
json转普通对象
当前名称:json的转来转去-创新互联
标题URL:http://pwwzsj.com/article/dogshc.html
比如我们想转成下面的对象
创新互联是一家专业提供汪清企业网站建设,专注与网站制作、成都做网站、H5技术、小程序制作等业务。10年已为汪清众多企业、政府机构等服务。创新互联专业网站建设公司优惠进行中。@Data
public class TestParam {private String name;
private Integer age;
}
那么你的代码可能是这样的
@Test
void test(){String json = "{\"name\":\"一只小哎呀\",\"age\":18}";
TestParam param = JSON.parseObject(json, TestParam.class);
}
于是我在代码里回到18了~
那么如果你的json想转成list呢?别担心,也有现成的接口能帮我们办好
String json = "[{\"name\":\"一只小哎呀\",\"age\":18},{\"name\":\"一只猪猪侠\",\"age\":30}]";
ListparamList = JSON.parseArray(json, TestParam.class);
json转map如果我们想转成map呢?要怎么办呢?
天真的小哎呀觉得Map也是对象呀 可以JSON.parseObject(json, HashMap.class);吗?
❌❌❌
java.lang.ClassCastException: com.alibaba.fastjson.JSONObject cannot be cast to com.不给你看======support.model.TestParam
为什么呢?因为编译器只知道要转成map,但是没有告诉编译器map里要转成什么类型,那么怎么才能告诉编译器具体的类型呢?
✅✅✅
于是commond+shift+F让我抄抄别人的代码。。
void test(){String json = "{\"等饭吃\":{\"name\":\"一只小哎呀\",\"age\":18},\"饲养员\":{\"name\":\"一只猪猪侠\",\"age\":30}}";
MapparamMap = JSON.parseObject(json, new TypeReference>() {});
TestParam param= paramMap.get("等饭吃");
}
-----------碎碎念时间-----
小哎呀今年换了份新工作,这边架构更想考虑"灵活",弄的代码里很多json/map这种结构,不敢相信这是阿里系的子公司
大家怎么看待灵活和规范的取舍嘞?
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
当前名称:json的转来转去-创新互联
标题URL:http://pwwzsj.com/article/dogshc.html