博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用json格式的数据进行通信
阅读量:5059 次
发布时间:2019-06-12

本文共 2373 字,大约阅读时间需要 7 分钟。

4 Java对象转换成JSON

4.1 问题

将Java对象转换成符合JSON格式的字符串,并测试。

4.2 方案

使用与json-lib.jar相关的jar文件完成类型的转换。

4.3 步骤

步骤一:新建实体类Friend

图- 15

步骤二:新建JSONTest类

在该类中添加四个方法,分别用于测试Java对象转换为JSON字符串,Java数组转换为JSON字符串,JSON字符串转换为Java对象,JSON字符串转换为Java数组。

步骤三:引入jar文件

在添加jar文件的时候,需要导入6个jar文件,缺一不可。如图-16所示。

图- 16

步骤四:添加具体的转换方法:Java对象转换为JSON字符串

图- 17

步骤五:运行结果

图– 18

步骤六:Java数组(集合)转换为JSON字符串

图– 19

运行结果:

图- 20

步骤七:JSON字符串转换为Java对象

图– 21

运行结果:

图- 22

步骤八:JSON字符串转换为Java数组(集合)

图– 23

运行结果:

图- 24

4.4 完整代码

Friend.java文件代码如下:

package bean;public class Friend {	private String name;	private int age;	public String getName() {		return name;	}	public void setName(String name) {		this.name = name;	}	public int getAge() {		return age;	}	public void setAge(int age) {		this.age = age;	}	public String toString() {		return this.name + "   " + this.age;	}}

JSONTest.java文件代码如下:

package json;import java.util.ArrayList;import java.util.List;import net.sf.json.JSONArray;import net.sf.json.JSONObject;import bean.Friend;public class JSONTest {	/**	 * Java对象转换为JSON字符串	 */	public static void test1() {		Friend f = new Friend();		f.setName("Zoro");		f.setAge(19);		JSONObject jsonObj = JSONObject.fromObject(f);		String jsonStr = jsonObj.toString();		System.out.println(jsonStr);	}	/**	 * Java数组转换为JSON字符串	 */	public static void test2() {		List
fs = new ArrayList
(); for (int i = 0; i < 3; i++) { Friend f = new Friend(); f.setName("Zoro" + (i + 1)); f.setAge(19 + i); fs.add(f); } JSONArray jsonArr = JSONArray.fromObject(fs); String jsonStr = jsonArr.toString(); System.out.println(jsonStr); } /** * JSON字符串转换为Java对象 */ public static void test3(){ String jsonStr = "{\"name\":\"Luffy\",\"age\":17}"; JSONObject jsonObj = JSONObject.fromObject(jsonStr); Friend friend = (Friend)JSONObject. toBean(jsonObj, Friend.class); System.out.println(friend); } /** * JSON字符串转换为Java数组 */ public static void test4(){ String jsonStr = "[{\"name\":\"Luffy\",\"age\":17}," + " {\"name\":\"Zoro\",\"age\":19}]"; JSONArray jsonArr = JSONArray.fromObject(jsonStr); List
friends = (List
)JSONArray. toCollection(jsonArr, Friend.class); for(Friend f :friends){ System.out.println(f); } } public static void main(String[] args) { //test1(); //test2(); //test3(); test4(); }}

转载于:https://www.cnblogs.com/fengdashen/p/5302438.html

你可能感兴趣的文章
文件内容红帽子数据库.profile文件内容详解
查看>>
泛型第23条:请不要在新代码中使用原生态类型
查看>>
对象方法(转载)Java中finalize的使用
查看>>
一个截屏工具制作的全过程记录——如何使用“拿来主义”
查看>>
了解SpringMVC框架及基本工作流程
查看>>
软件开发之能力素养
查看>>
5.28 周末笔记
查看>>
git 永久性设置密码
查看>>
自拍机器人(摄影 拍照 录像)
查看>>
Installation for TinyOS on Ubuntu 16.04
查看>>
h5页面在不同ios设备上的问题总结
查看>>
Python的map、filter、reduce函数
查看>>
前端面试js题
查看>>
51NOD 大数加法以及python写法
查看>>
java四种数组排序
查看>>
(三)、
查看>>
crud springmvc
查看>>
Java对象初始化详解
查看>>
linux IPtable防火墙 禁止和开放端口
查看>>
Rails应用系列(1):初识Rails
查看>>