对象类型转换2:

com.alibaba.fastjson.JSONObject时经常会用到它的转换方法,包括Java对象转成JSON串、JSON对象,JSON串转成java对象、JSON对象,JSON对象转换Java对象、JSON串等,使用方法总结如下

1、Java对象-->JSON对象

(JSONObject)JSONObject.toJSON(Java对象实例)

public classJSON2JavaTest{public static voidmain(String[] args) {
Student stu= new Student("公众号编程大道", "m", 2);//Java对象转化为JSON对象

JSONObject jsonObject =(JSONObject) JSONObject.toJSON(stu);

System.out.println("Java对象转化为JSON对象\n" + jsonObject);//{"name":"公众号编程大道","age":2,"sex":"m"}

}

}

2、Java对象-->JSON字符串

JSONObject.toJSONString(Java对象实例)

public classJSON2JavaTest{public static voidmain(String[] args) {
Student stu= new Student("公众号编程大道", "m", 2);//Java对象转换成JSON字符串

String stuString =JSONObject.toJSONString(stu);

System.out.println("Java对象转换成JSON字符串\n" + stuString);//{"age":2,"name":"公众号编程大道","sex":"m"}

}

}

3、JSON对象-->JSON字符串

JSONObject.toJSONString();

public classJSON2JavaTest{public static voidmain(String[] args) {
Student stu= new Student("公众号编程大道", "m", 2);//先转成JSON对象

JSONObject jsonObject =(JSONObject) JSONObject.toJSON(stu);//JSON对象转换为JSON字符串

String jsonString =jsonObject.toJSONString();

System.out.println("JSON对象转换为JSON字符串\n" + jsonString);//{"name":"公众号编程大道","age":2,"sex":"m"}

}

}

4、JSON对象-->Java对象

JSONObject.toJavaObject(JSON对象实例, Java对象.class);

public classJSON2JavaTest{public static voidmain(String[] args) {
Student stu= new Student("公众号编程大道", "m", 2);//先转成JSON对象

JSONObject jsonObject =(JSONObject) JSONObject.toJSON(stu);//JSON对象转换成Java对象

Student student = JSONObject.toJavaObject(jsonObject, Student.class);

System.out.println("JSON对象转换成Java对象\n" + student);//Student{name='公众号编程大道', sex='m', age=2}

}

}

5、JSON字符串-->JSON对象

JSONObject.parseObject(JSON字符串)

public classJSON2JavaTest{public static voidmain(String[] args) {
String stuString= "{\"age\":2,\"name\":\"公众号编程大道\",\"sex\":\"m\"}";//JSON字符串转换成JSON对象

JSONObject jsonObject1 =JSONObject.parseObject(stuString);

System.out.println("JSON字符串转换成JSON对象\n" + jsonObject1);//{"sex":"m","name":"公众号编程大道","age":2}

}

}

6、JSON字符串-->Java对象

JSONObject.parseObject(JSON字符串, Java对象.class);

public classJSON2JavaTest{public static voidmain(String[] args) {
String stuString= "{\"age\":2,\"name\":\"公众号编程大道\",\"sex\":\"m\"}";//JSON字符串转换成Java对象

Student student1 = JSONObject.parseObject(stuString, Student.class);

System.out.println("JSON字符串转换成Java对象\n" + student1);//Student{name='公众号编程大道', sex='m', age=2}

}

}

JSON串、JSON对象、Java对象的相互转换的更多相关文章

  1. json 串转成 java 对象再拼接成前台 html 元素

    获取商品参数 json 串,转成 java 对象,再拼接成前台 html 的Service方法 @Override public String getItemParam(Long itemId) { ...

  2. 比较任意两个JSON串是否相等(比较对象是否相等)JAVA版

    废话少说,直接入题. 在面向对象语言中,经常会比较两个对象是否相等,而比较的大多是实体类实例,也就是封装数据的那些类实例,或者是Map.List互相嵌套成的复杂数据结构. 比较对象是否相等,常见的思路 ...

  3. Gson把json串转换成java实体对象

    Gson把json串转换成java实体对象的方法如下: 1.首先导入Gson的jar包,网上可以下载. java实体对象如下: public class Model { private double ...

  4. 类对象序列化为json串,json串反序列化为类对象

    1.类对象序列化为json串: 方法一: class P(object): def __init__(self,name,age,sex): self.name=name self.age=age s ...

  5. 取得远端相应Json并转化为Java对象(嵌套对象)二

    工程下载链接:https://files.cnblogs.com/files/xiandedanteng/JsonParse20190929.rar 客户端: 如果从Restful Service取得 ...

  6. json相关类库,java对象与json相互转换

    有效选择七个关于Java的JSON开源类库 转自:http://www.open-open.com/lib/view/open1397870197828.html 翻译: (英语原文:http://w ...

  7. json、xml和java对象之间的转化

    其实从面相对象的角度来理解这个问题,就会很清晰.java中的一切皆对象即把世间万物(Everything in the world)看做java对象,任何处理不了的问题都可以先转化成java对象在做处 ...

  8. 将String类型的json字符串转换成java对象

    1,import com.fasterxml.jackson.databind.ObjectMapper; ObjectMapper mapper = new ObjectMapper(); Mycl ...

  9. 取得远端相应Json并转化为Java对象一

    JDK:1.8.0_212 IDE:STS4(Spring Tool Suit4 Version: 4.3.2.RELEASE) 工程下载:https://files.cnblogs.com/file ...

  10. fastjson将json字符串转化为java对象

    目录 一.导入一个fastjson的jar包 二.Json字符串格式 三.根据json的格式创建Java类 四.给java类的所有属性添加setter方法 五.转换为java对象 一.导入一个fast ...

随机推荐

  1. 树莓派CM4 wifi频繁断开连接

    CM4核心板上自带的wifi模块连接上华为/小米的路由器5G热点以后,会频繁断开连接,断开连接前使用 iw dev 查看wifi信息如下: phy#0 Unnamed/non-netdev inter ...

  2. java 网络编程基础 UDP协议的Socket:DatagramSocket;广播Socket:MulticastSocket

    什么是UDP协议: UDP协议是一种不可靠的网络协议,它在通信实例的两端各建立一个Socket 但这两个 Socket之间并没有虚拟链路,这两个Socket只是发送.接收数据报的对象.Java 提供了 ...

  3. my.ini配置文件内容

    # For advice on how to change settings please see# http://dev.mysql.com/doc/refman/5.6/en/server-con ...

  4. Open-UI序言

    Open_UI-----序言 在单片机开发的时候,我们时常需要一个足够开放的,体积足够小巧,且移植性较高的UI库来显示信息,从而做到非常优秀的人机交互效果.而我试过的UI库如下: LVGL ​ 这是目 ...

  5. ACwing02.01背包问题

    有\(N\)件物品和一个容量是\(V\)的背包.每件物品只能使用一次. 第\(i\)件物品的体积是\(v_i\),价值是\(w_i\). 求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且 ...

  6. Linux(Centos)安装中文字体库(文档中文字符不显示)

    yum -y install fontconfig 在/usr/shared/fonts目录下新建一个目录chinese 然后打开windows本地的字体库 将这里面的所有文件上传到centos里我们 ...

  7. Github访问加速(解决md图片显示问题)

    参考自知乎:https://zhuanlan.zhihu.com/p/107691233 基本步骤 查找域名对应IP https://www.ipaddress.com http://tool.chi ...

  8. vue-子组件创建/注册/使用流程

    流程分为三步 非单文件组件:(实际不用,因为很麻烦,框架都是多文件组件) 局部注册 1.创建一个组件 const school = Vue.extend({ // 传入配置对象 // 子组件配置对象不 ...

  9. LeetCode解题报告汇总! All in One!

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 把自己刷过的所有题目做一个整理,并且用简洁的语言概括了一下思路,汇总成了一个表格. 题目 ...

  10. 小试国产开源HTAP分布式NewSQL数据库TiDB-v5.3.0

    概述 定义 TiDB官网 https://pingcap.com/zh/ 最新版本为5.3.0 TiDB GitHub源码 https://github.com/pingcap/tidb TiDB是由 ...