欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

使用JSONObject将实体类,String类型和JSON类型相互转换(java)

程序员文章站 2022-06-15 12:01:23
...

People.java

public class People {
	private int id;
	private String name;
	@Override
	public String toString() {
		return "People [id=" + id + ", name=" + name + "]";
	}
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	
}

MainTest.java

import net.sf.json.JSONObject;

public class MainTest {
	public static void main(String[] args) {
		//创建JSONOobject类
		JSONObject json;
		
		//创建测试Bean
		People people = new People();
		people.setId(12);
		people.setName("王大大");
		//1.将Bean转换为Json格式
		json = JSONObject.fromObject(people);
		//2.将Json格式转换为String类型
		String jsonStr = json.toString();
		System.out.println("Bean转换为Json:" + jsonStr);
		//3.将String转换为Json格式,Json格式通过toString()方法转换为String类型
		json = JSONObject.fromObject(jsonStr);
		System.out.println("String转换为Json:" + json.toString());
		//4.将Json格式转换为Bean
		People peo = (People) json.toBean(json, People.class);
		System.out.println("Json转换为Bean:" + peo.toString());
		//5.测试Json转换后的Bean
		System.out.println("测试Json转换后的Bean:" + peo.getName());
		
	}
}

运行结果

Bean转换为Json:{"id":12,"name":"王大大"}
String转换为Json:{"id":12,"name":"王大大"}
Json转换为Bean:People [id=12, name=王大大]
测试Json转换后的Bean:王大大

总结

  1. 将String或者Bean转换为JSON,使用 fromObject(Object object) 方法
  2. 将Json转换为String,使用 toString() 方法
  3. 将Json转换为Bean,使用toBean(JSONObject jsonObject, Class beanClass)

JSONObject API

参考网站:http://json-lib.sourceforge.net/apidocs/jdk15/index.html

相关标签: java