对象类型转换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. GET与POST的比较

    HTTP 方法:GET 对比 POST HTTP 消息 标签列表(字母排序) 两种最常用的 HTTP 方法是:GET 和 POST. 什么是 HTTP? 超文本传输协议(HTTP)的设计目的是保证客户 ...

  2. CF23A You're Given a String... 题解

    Content 给定一个长度为 \(n\) 的字符串,求出至少出现两次的最长子串的长度. 数据范围:\(1\leqslant n\leqslant 100\). Solution 我们直接暴力求出每个 ...

  3. CF20C Dijkstra? 题解

    Content 给定一张 \(n\) 个点 \(m\) 条边的无向图,请判断是否有一条可行的从 \(1\) 到 \(n\) 的路径,有的话输出长度最短的,没有的话输出 -1. 数据范围:\(2\leq ...

  4. 【LeetCode】575. Distribute Candies 解题报告(Java & Python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 Java解法 Python解法 日期 题目地址:ht ...

  5. 【LeetCode】540. Single Element in a Sorted Array 解题报告(Python & C++)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 解题方法 方法一:异或 方法二:判断相邻元素是否相等 方法三:二分查找 ...

  6. 【LeetCode】382. Linked List Random Node 解题报告(Python & C++)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 数组保存再随机选择 蓄水池抽样 日期 题目地址:ht ...

  7. leetcode1261在受污染的二叉树中查找元素

    题目 一颗二叉树,树根值为0,父节点为x,则左子值为2x+1,右子为2x+2.现在只有树的结构,所有值都变为-1被污染了.求污染前是否存在某个值. 构建一次树,查询会调用多次. 题解 这道题还是比较简 ...

  8. The 2015 China Collegiate Programming Contest -ccpc-c题-The Battle of Chibi(hdu5542)(树状数组,离散化)

    当时比赛时超时了,那时没学过树状数组,也不知道啥叫离散化(貌似好像现在也不懂).百度百科--离散化,把无限空间中无限的个体映射到有限的空间中去,以此提高算法的时空效率. 这道题是dp题,离散化和树状数 ...

  9. HDU 5965:扫雷(DP,递推)

    扫雷 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submissi ...

  10. MongoDB基本介绍与安装(1)

    MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案. MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功 ...