JSONObject应用Json字符串和Object对象之间的转换,Map封装数据思路

package com.example.core.mydemo.json5;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.annotation.JSONField; public class Item {
private String id;
@JSONField(serialize = false) //fastjson 忽略字段打印
private String rate; private String status; public Item() {
} public Item(String id, String rate) {
this.id = id;
this.rate = rate;
} @Override
public String toString() {
return "Item{" +
"id='" + id + '\'' +
", rate='" + rate + '\'' +
", status='" + status + '\'' +
'}';
} public String getStatus() {
return status;
} public void setStatus(String status) {
this.status = status;
} /**
* output {"id":"111"}
* @param args
*/
public static void main(String[] args) {
Item item = new Item();
item.setId("111");
item.setRate("56666");
System.out.println(JSON.toJSONString(item));
} public String getId() {
return id;
} public void setId(String id) {
this.id = id;
} public String getRate() {
return rate;
} public void setRate(String rate) {
this.rate = rate;
}
} package com.example.core.mydemo.json5; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.google.gson.reflect.TypeToken; import java.lang.reflect.Type; /**
* output:
* jsonString={"id":"4"}
* id=4
* status=成功
* item2=Item{id='4', rate='null', status='成功'}
* item3=Item{id='4', rate='null', status='成功'}
*/
public class JSONObjectTest {
public static void main(String[] args) {
Item item = new Item("4","100");
String jsonString = JSON.toJSONString(item);
System.out.println("jsonString="+jsonString);
JSONObject jsonObject = JSON.parseObject(jsonString);
if (jsonObject.containsKey("id")) {
String id = jsonObject.getString("id");
System.out.println("id=" + id);
}
if (jsonObject.containsKey("rate")) {
String rate = jsonObject.getString("rate");
System.out.println("rate=" + rate);
} //封装数据
jsonObject.put("status","成功");
if (jsonObject.containsKey("status")) {
String status = jsonObject.getString("status");
System.out.println("status=" + status);
}
// T = JSON.parseObject("json","Class T");
Item item2 = jsonObject.toJavaObject(Item.class);
System.out.println("item2=" + item2.toString()); Type type = new TypeToken<Item>() {}.getType();
Item item3 = jsonObject.toJavaObject(type);
System.out.println("item3=" + item3.toString()); }
}
package com.example.core.mydemo.json5;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.annotation.JSONField; public class Item {
private String id;
@JSONField(serialize = false) //fastjson 忽略字段打印
private String rate; private String status; public Item() {
} public Item(String id, String rate) {
this.id = id;
this.rate = rate;
} @Override
public String toString() {
return "Item{" +
"id='" + id + '\'' +
", rate='" + rate + '\'' +
", status='" + status + '\'' +
'}';
} public String getStatus() {
return status;
} public void setStatus(String status) {
this.status = status;
} /**
* output {"id":"111"}
* @param args
*/
public static void main(String[] args) {
Item item = new Item();
item.setId("111");
item.setRate("56666");
System.out.println(JSON.toJSONString(item));
} public String getId() {
return id;
} public void setId(String id) {
this.id = id;
} public String getRate() {
return rate;
} public void setRate(String rate) {
this.rate = rate;
}
} package com.example.core.mydemo.json5; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.google.gson.reflect.TypeToken; import java.lang.reflect.Type; /**
* output:
* jsonString={"id":"4"}
* id=4
* status=成功
* item2=Item{id='4', rate='null', status='成功'}
* item3=Item{id='4', rate='null', status='成功'}
*/
public class JSONObjectTest {
public static void main(String[] args) {
Item item = new Item("4","100");
String jsonString = JSON.toJSONString(item);
System.out.println("jsonString="+jsonString);
JSONObject jsonObject = JSON.parseObject(jsonString);
if (jsonObject.containsKey("id")) {
String id = jsonObject.getString("id");
System.out.println("id=" + id);
}
if (jsonObject.containsKey("rate")) {
String rate = jsonObject.getString("rate");
System.out.println("rate=" + rate);
} //封装数据
jsonObject.put("status","成功");
if (jsonObject.containsKey("status")) {
String status = jsonObject.getString("status");
System.out.println("status=" + status);
}
// T = JSON.parseObject("json","Class T");
Item item2 = jsonObject.toJavaObject(Item.class);
System.out.println("item2=" + item2.toString()); Type type = new TypeToken<Item>() {}.getType();
Item item3 = jsonObject.toJavaObject(type);
System.out.println("item3=" + item3.toString()); }
}

JSONObject应用Json字符串和Object对象之间的转换,Map封装数据思路的更多相关文章

  1. JSON字符串和JS对象之间的转换

    JSON字符串和JS对象之间的转换 1 json字符串转换为js对象 1.1 标准json格式字符串转换为Js对象  JSON字符串 str JSON.parse(str) eval(str) eva ...

  2. C#-使用Newtonsoft.Json实现json字符串与object对象互转

    json字符串转object对象: IF004Response processResponse = JsonConvert.DeserializeObject<IF004Response> ...

  3. Json字符串转换为java对象的各种实现方法【json_lib框架、Gson、org.json】

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://mengzhengbin520.blog.51cto.com/7590564/12 ...

  4. Java基础97 json插件的使用(java对象和json字符串对象之间的转换)

    1.需要用到的包 2.实例 实体类 people package com.shore.entity; /** * @author DSHORE/2019-4-19 * */ public class ...

  5. Json——使用Json jar包实现Json字符串与Java对象或集合之间的互相转换

    总结一下利用Json相关jar包实现Java对象和集合与Json字符串之间的互相转换: 1.创建的User类: package com.ghj.packageofdomain; public clas ...

  6. java json数据转List对象的集合-----阿里巴巴插件---及原生json---JSON 与 对象 、集合 之间的转换 JSON字符串和java对象的互转【json-lib】

    List<RunfastFullLess> list=(List<RunfastFullLess>)JSONArray.parseObject(activity.getFull ...

  7. c#中jeson字符串和OBJECT对象的相互转换

    对于本问题   我用三步来分别说明实现过程 1.定义一个类---- 实现转换的具体方法 using System; using System.Collections.Generic; using Sy ...

  8. Java中JSON字符串与java对象的互换实例详解

    这篇文章主要介绍了在java中,JSON字符串与java对象的相互转换实例详解,非常不错,具有参考借鉴价值,需要的朋友可以参考下 在开发过程中,经常需要和别的系统交换数据,数据交换的格式有XML.JS ...

  9. Java中JSON字符串与java对象的互换实例详解(转)

    http://www.jb51.net/article/90914.htm 在开发过程中,经常需要和别的系统交换数据,数据交换的格式有XML.JSON等,JSON作为一个轻量级的数据格式比xml效率要 ...

  10. JSON字符串与java对象的转换

    所需的jar包: 1.commons-lang.jar 2.commons-beanutils.jar 3.commons-collections.jar 4.commons-logging.jar ...

随机推荐

  1. 云效DevOps实践-如何基于云效实现测试自动化集成和分析

    简介: 对于现代软件研发来说,持续.快速.高质量.低风险地交付需求特性,是业务对研发的主要诉求.而要做到这一点,除了要有良好的架构设计.卓越的工程能力,快速可靠的测试反馈也是其非常重要的一环,达到这一 ...

  2. 消息队列 RocketMQ 遇上可观测:业务核心链路可视化

    ​简介:本篇文章主要介绍 RocketMQ 的可观测性工具在线上生产环境的最佳实践.RocketMQ的可观测性能力领先业界同类产品,RocketMQ 的 Dashboard 和消息轨迹等功能为业务核心 ...

  3. io_uring vs epoll ,谁在网络编程领域更胜一筹?

    ​简介:从定量分析的角度,通过量化 io_uring 和 epoll 两种编程框架下的相关操作的耗时,来分析二者的性能差异. ​ 本文作者:王小光,「高性能存储技术SIG」核心成员. 背景 io_ur ...

  4. [Go] golang 去除 URI 链接中的 query string 参数

    思路是使用 golang 的 net/url 包提供的方法解析url各部分,其中 URL.RawQuery 为查询参数部分,格式如 :a=b&c=d 然后我们再通过 strings.Repla ...

  5. dotnet core 3.1 将 UWP 控件嵌入到 WPF 应用 收到 UIA 消息主线程卡住

    本文记录一个问题,此问题是在 .NET Core 3.1 的 WPF 应用里面,嵌入 UWP 控件之后,在收到 UIA 的消息时,可能让主线程卡住.暂时此问题还不知道具体的复现步骤,此问题预计和 WP ...

  6. dotnet OpenXML 解析 PPT 里表格的样式

    在 PPT 里面的表格可以通过表格样式配置决定表格的样式,本文将和大家介绍如何获取和解析表格的样式 本文属于 OpenXML 系列博客,有一定的上下文,详细请参阅 Office 使用 OpenXML ...

  7. 关于Python中的None

    关于Python中的None 注意到None这个类型是在做一道Python题目时,要求说如果传进函数的字符串是"None"则返回False,糟糕的是我并不知道如何判断是否是&quo ...

  8. 2021~2022Apache大数据相关项目盘点

    一.晋升为Apache TLP(Top-Level Project)的大数据相关项目 1.1.Apache DataSketches (20210203) 1.2.Apache Gobblin (20 ...

  9. 【简说Python WEB】Jinja2模板

    目录 [简说Python WEB]Jinja2模板 目前环境的代码树 抽离出来的Html模板 渲染模板 条件语句 循环语句 系统环境:Ubuntu 18.04.1 LTS Python使用的是虚拟环境 ...

  10. 《最新出炉》系列入门篇-Python+Playwright自动化测试-44-鼠标操作-上篇

    1.简介 前边文章中已经讲解过鼠标的拖拽操作,今天宏哥在这里对其的其他操作进行一个详细地介绍和讲解,然后对其中的一些比较常见的.重要的操作单独拿出来进行详细的介绍和讲解. 2.鼠标操作语法 鼠标操作介 ...