当前位置: 首页 > news >正文

类网站建设江门市蓬江区最新发布

类网站建设,江门市蓬江区最新发布,耐克电子商务网站建设,滨州改版网站建设服务最近,工作中会涉及到Java对象与JSON字符串相互转换,虽然说并不难,但打算还是梳理一番,主要内容有: JSON 字符串 转 普通对象 普通对象 转 JSON 字符串 JSON 字符串数组 转 List 集合对象 List 集合对象 转 JSON 字符串…

最近,工作中会涉及到Java对象与JSON字符串相互转换,虽然说并不难,但打算还是梳理一番,主要内容有:

JSON 字符串 转 普通对象
普通对象 转 JSON 字符串
JSON 字符串数组 转 List 集合对象
List 集合对象 转 JSON 字符串数组
JSON 字符串 转 装有对象的 Map
装有对象的Map 转 JSON 字符串
开始之前,需要在 pom.xml 引入相关的 jar 包:

<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
<dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.16.10</version><scope>provided</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/com.alibaba/fastjson -->
<dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.75</version>
</dependency>

创建一个普通对象,使用 lombok 提供的注解:

@Data
public class ExtInfo {private String orderId;private String creatTime;private String postion;private String orderType;private String amount;
}

测试1:json字符串 与 普通对象 互转

public class Demo {@Testvoid test1() {//  json字符串转普通对象String jsonStr = "{\"orderId\":\"1111\",\"creatTime\":\"20210817223001\",\"postion\":\"hangZhou xiXi\",\"orderType\":\"4\",\"amount\":\"20\"}";JSONObject jsonObject = JSONObject.parseObject(jsonStr);ExtInfo extInfo = JSONObject.toJavaObject(jsonObject, ExtInfo.class);System.out.println(extInfo);System.out.println(extInfo.getOrderId());// 普通对象转json字符串String str = JSONObject.toJSONString(extInfo);System.out.println(str);}
}

测试结果:

ExtInfo(orderId=1111, creatTime=20210817223001, postion=hangZhou xiXi, orderType=4, amount=20)
1111
{"amount":"20","creatTime":"20210817223001","orderId":"1111","orderType":"4","postion":"hangZhou xiXi"}

测试2:json字符串数组 与 List集合对象 互转

public class Demo2 {@Testvoid test2() {  // json字符串数组转对象List集合String jsonStrArray = "[{\"orderId\":\"1111\",\"creatTime\":\"20210817223001\",\"postion\":\"hangZhou xiXi\",\"orderType\":\"4\",\"amount\":\"20\"}]";JSONArray jsonArray = JSONObject.parseArray(jsonStrArray);// 方式一、根据索引获取 JSONArray 中的对象ExtInfo extInfo1 = jsonArray.getObject(0, ExtInfo.class);System.out.println(extInfo1);// 方式二、转成List,再从List获取对象List<ExtInfo> extInfos = jsonArray.toJavaList(ExtInfo.class);ExtInfo extInfo2 =  extInfos.get(0);System.out.println(extInfo2);//  List集合对象转json字符串数组String strs = JSONObject.toJSONString(extInfos);System.out.println(strs);}
}

测试结果

ExtInfo(orderId=1111, creatTime=20210817223001, postion=hangZhou xiXi, orderType=4, amount=20)
ExtInfo(orderId=1111, creatTime=20210817223001, postion=hangZhou xiXi, orderType=4, amount=20)
[{"amount":"20","creatTime":"20210817223001","orderId":"1111","orderType":"4","postion":"hangZhou xiXi"}]

测试3:json字符串 与 装有对象的Map 互转

public class Demo3 {@Testvoid test3() {  // map格式转对象String mapJsonStr = "{\"level\":{\"orderId\":\"1111\",\"creatTime\":\"20210817223001\",\"postion\":\"hangZhou xiXi\",\"orderType\":\"4\",\"amount\":\"20\"}}";Map<String, ExtInfo> extInfoMap = JSONObject.parseObject(mapJsonStr,new TypeReference<HashMap<String, ExtInfo>>() {});System.out.println(extInfoMap);System.out.println(extInfoMap.get("level"));// 对象转map格式String mapStr = JSONObject.toJSONString(extInfoMap);System.out.println(mapStr);}
}

测试结果:

{level=ExtInfo(orderId=1111, creatTime=20210817223001, postion=hangZhou xiXi, orderType=4, amount=20)}
ExtInfo(orderId=1111, creatTime=20210817223001, postion=hangZhou xiXi, orderType=4, amount=20)
{"level":{"amount":"20","creatTime":"20210817223001","orderId":"1111","orderType":"4","postion":"hangZhou xiXi"}}
http://www.dtcms.com/a/509994.html

相关文章:

  • 军博网站建设公司成都的科技公司有哪些
  • 北京网站的建立的国泰君安建设工程官方网站
  • 怎样建立免费的个人网站软件工程属于什么专业类别
  • 网站备案为什么要闭站长春哪家公司做网站好
  • ph域名网站网站内容方案
  • 石油网站编辑怎么做全网营销解决方案
  • 做mip网站必须备案吗手机网页无法访问
  • 网站免费空间哪里申请余姚市城乡建设局网站
  • 要写网站建设方案网站建设 秦皇岛公司哪家好
  • 网站建设克隆wordpress ueditor
  • 网站首次备案网站策划与运营
  • 搭建个人网站赚钱企业网站优化咨询
  • 网站框架怎么搭建wordpress 首页调用栏目文章
  • 58同城商业后台如何做网站wordpress 警告
  • 做环境设计的网站深圳建网站多少钱
  • 网站开发的人李海涛邢台123网站模板
  • 外贸网站使用什么品牌国外主机wordpress搭建
  • 阿里云服务器wordpress建站教程动画设计图
  • 这几年做啥网站致富wordpress传文件
  • 网站如何做中英文双语言版本软装设计公司排行
  • 山东营销网站建设设计福州网站建设哪家强
  • 网站备案号查询平台女生学电子商务后悔了
  • 汕头网站推广费用汨罗网站建设
  • wordpress 足球sem和seo的区别
  • 做企业网站找哪家温岭市溪建设局网站
  • 教育培训类网站设计抖音代运营公司经营范围
  • 二手房网站平台怎么做网络服务器主要有
  • 石铜路网站建设wordpress转app
  • 银川市住房和城乡建设局网站公告服务app开发的公司
  • 南山做网站推广乐云seo网站怎么制作