Java对象转JSON字符串

发布时间:2023-05-20

一、从JSON对象转字符串

在Java中,可以使用JSONObject类来表示一个JSON对象。每个JSONObject对象都可以包含一些键值对,用于表示一些数据。当需要将这个JSONObject对象转化为JSON字符串时,可以调用其toString()方法。

JSONObject jsonObject = new JSONObject();
jsonObject.put("name", "张三");
jsonObject.put("age", 25);
String jsonString = jsonObject.toString();
System.out.println(jsonString);

执行上述代码后,输出结果为:

{"name":"张三","age":25}

可以看到,toString()方法将JSONObject对象转化为了JSON字符串。

二、从JSON字符串转JSON对象

有时候,我们需要将一个字符串解析为JSON对象。在Java中,可以使用JSON类来实现这个功能。

String jsonString = "{\"name\":\"李四\",\"age\":30}";
JSONObject jsonObject = JSON.parseObject(jsonString);
System.out.println(jsonObject.get("name"));
System.out.println(jsonObject.get("age"));

执行上述代码后,输出结果为:

李四
30

可以看到,使用JSON类的parseObject()方法可以将JSON字符串解析为JSONObject对象。

三、从Java对象转JSON字符串

当需要将Java中的数据对象转换为JSON字符串时,需要先将数据对象转化为JSONObject对象,然后再调用其toString()方法。

public class Person {
    private String name;
    private int age;
    public Person(String name, int age) {
        this.name = name;
        this.age = 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;
    }
}
Person person = new Person("王五", 35);
JSONObject jsonObject = new JSONObject();
jsonObject.put("name", person.getName());
jsonObject.put("age", person.getAge());
String jsonString = jsonObject.toString();
System.out.println(jsonString);

执行上述代码后,输出结果为:

{"name":"王五","age":35}

可以看到,先将Person对象的属性值取出来,然后使用put()方法将其放入JSONObject中,再将JSONObject对象转化为JSON字符串。