如何使用Java中的JSON-lib API将Map转换为JSON对象?
甲的JSONObject 是的无序集合的名称/值对,而映射的 是,键映射到值的对象。映射不能包含重复的 键, 并且每个键最多可以映射到一个值。我们需要使用JSON-lib库对JSON格式的Map进行序列化 和反序列化。最初,我们可以创建一个POJO类,并将此实例作为参数传递给Map 类的put()方法,最后将该映射实例添加到JSONObject的accumulateAll()方法。
语法
public void accumulateAll(Map map)
在下面的示例中,我们可以将Map转换为JSON对象。
示例
import java.util.*;import net.sf.json.JSONObject;
public class ConvertMapToJSONObjectTest {
public static void main(String[] args)throws Exception {
JSONObject jsonObject = new JSONObject();
Map<Integer, Employee> employees = new HashMap<Integer, Employee>();
employees.put(1, new Employee("Adithya", "Jai", 30));
employees.put(2, new Employee("Vamsi", "Krishna", 28));
employees.put(3, new Employee("Chaitanya", "Sai", 30));
jsonObject.accumulateAll(employees);
System.out.println(jsonObject.toString(3)); // pretty print JSON
}
public static class Employee {
private String firstName, lastName;
private int age;
public Employee(String firstName, String lastName, int age) {
super();
this.firstName = firstName;
this.lastName = lastName;
this.age = age;
}
public String getFirstName() {
return firstName;
}
public String getLastName() {
return lastName;
}
public int getAge() {
return age;
}
}
}
输出结果
{"1": {
"firstName": "Adithya",
"lastName": "Jai",
"age": 30
},
"2": {
"firstName": "Vamsi",
"lastName": "Krishna",
"age": 28
},
"3": {
"firstName": "Chaitanya",
"lastName": "Sai",
"age": 30
}
}
以上是 如何使用Java中的JSON-lib API将Map转换为JSON对象? 的全部内容, 来源链接: utcz.com/z/316846.html