使用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:王大大
总结
- 将String或者Bean转换为JSON,使用 fromObject(Object object) 方法
- 将Json转换为String,使用 toString() 方法
- 将Json转换为Bean,使用toBean(JSONObject jsonObject, Class beanClass)
JSONObject API
参考网站:http://json-lib.sourceforge.net/apidocs/jdk15/index.html
上一篇: 关于std::async 的实验
下一篇: C++中strcpy_s()