Java对象 json之间的转换(json-lib)

在这里主要简单的介绍一下,如何使用json-lib这个工具包来完成Java对象(或集合)与json对象(或集合)之间的转换~

1. Java对象转换成json(既创建json)

关键类:JSONObject jsonObject = JSONObject.from(Object obj);

使用说明:只要将Java对象传入方法,那么便可以得到一个JSONObject,然后你便可以直接json.toString();输出json~

例子:

    @Test
    public void testCreateJson() throws Exception {
        Employee employee = new Employee("zhangSan", "12");
        JSONObject jsonObject = JSONObject.fromObject(employee);
        System.out.println(jsonObject.toString());
    }

输出结果:

{"age":"12","name":"zhangSan"} 

由上面的输出结果可以看出,JSONObject输出的json对象的属性之间的顺序是无序的~

2. 字符串转换成Java对象(既解析json)

关键类:JSONObject json = new JSONObject(String jsonString);

    json.get(String key); //根据key来获取值。key对Java对象来说就是属性名,value就是属性值

使用说明:首先将json字符串传入JSONObject对象的构造函数中,得到一个JSONObject对象,再通过该对象进行获取相应的数据,从而构造出一个Java对象。

例子:

    @Test
    public void testParseJson(){
        String jsonString = "{\"age\":\"12\",\"name\":\"zhangSan\"}";
        JSONObject json = new JSONObject().fromObject(jsonString);
        System.out.println(json.get("name"));
        System.out.println(json.get("age"));
    }

输出结果:

zhangSan
12

 

附录:Employee代码的具体实现

public class Employee {
    private String name;
    private String age;
    public String getName() {
        return name;
    }
    public String getAge() {
        return age;
    }
    public void setName(String name) {
        this.name = name;
    }
    public void setAge(String age) {
        this.age = age;
    }
    public Employee(String name, String age) {
        super();
        this.name = name;
        this.age = age;
    }
    public Employee() {
        super();
    }
    @Override
    public String toString() {
        return "[name="+name+",age="+age+"]";
    }
}

 

延伸阅读:

Java集合 Json集合之间的转换

转载于:https://www.cnblogs.com/JamKong/p/4928973.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值