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集合之间的转换

时间: 2024-08-02 07:03:39

Java对象 json之间的转换(json-lib)的相关文章

java json数据转List对象的集合-----阿里巴巴插件---及原生json---JSON 与 对象 、集合 之间的转换 JSON字符串和java对象的互转【json-lib】

List<RunfastFullLess> list=(List<RunfastFullLess>)JSONArray.parseObject(activity.getFullLesss(),RunfastFullLess.class); 使用阿里巴巴的json插件 <!--json数据转换的阿里巴巴依赖库--><dependency> <groupId>com.alibaba</groupId> <artifactId>

使用JAXB来实现Java合xml之间的转换

使用jaxb操作Java与xml之间的转换非常简单,看个例子就明白了. //javaBean-->xml @Test public void test1() { try { JAXBContext jaxbContext = JAXBContext.newInstance(User.class); Marshaller marshaller = jaxbContext.createMarshaller(); User user1 = new User("张三", "zh

转载-------- JSON 与 对象 、集合 之间的转换 JSON字符串和java对象的互转【json-lib】

转载--*--*---- 在开发过程中,经常需要和别的系统交换数据,数据交换的格式有XML.JSON等,JSON作为一个轻量级的数据格式比xml效率要高,XML需要很多的标签,这无疑占据了网络流量,JSON在这方面则做的很好,下面先看下JSON的格式, JSON可以有两种格式,一种是对象格式的,另一种是数组对象, {"name":"JSON","address":"北京市西城区","age":25}//JS

使用json-lib进行Java和JSON之间的转换

1. json-lib是一个java类库,提供将Java对象,包括beans, maps, collections, java arrays and XML等转换成JSON,或者反向转换的功能. 2. json-lib 主页 : http://json-lib.sourceforge.net/ 3.执行环境 需要以下类库支持 jakarta commons-lang 2.5 jakarta commons-beanutils 1.8.0 jakarta commons-collections 3

js中js数组、对象与json之间的转换

在数据传输过程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键.例如:JSON字符串:var str1 = '{ "name": "cxh", "sex": "man" }';JSON对象:var str2 = { "name": "cxh", "sex": "man"

使用json-lib进行Java和JSON之间的转换【转载】

1. json-lib是一个java类库,提供将Java对象,包括beans, maps, collections, java arrays and XML等转换成JSON,或者反向转换的功能. 2. json-lib 主页 : http://json-lib.sourceforge.net/ 3.执行环境 需要以下类库支持 jakarta commons-lang 2.5 jakarta commons-beanutils 1.8.0 jakarta commons-collections 3

【转】使用json-lib进行Java和JSON之间的转换

原文链接:http://www.cnblogs.com/mailingfeng/archive/2012/01/18/2325707.html 1. json-lib是一个java类库,提供将Java对象,包括beans, maps, collections, java arrays and XML等转换成JSON,或者反向转换的功能. 2. json-lib 主页 : http://json-lib.sourceforge.net/ 3.执行环境 需要以下类库支持 jakarta common

javascript、js操作json方法总结(json字符创转换json对象)

相信前端的同学们对json并不陌生,接触过很多.但是很少人知道json的全称是什么,哈哈,我也是查资 料知道的.(JSON JavaScript Object Notation是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式.) json可以以数组传递,也可以以对象传递,我前面的文章PHP对发布版本时间轴数据处理,返回的json格式,是一个数组json,然后里面含有对象,这是json常见的格式.后来经过php的处理,结构又发生了变化,最外层是一个对象了,里面是数组和

使用XStream注解实现Java对象与XML互相转换的代码示例

本文记录一下使用xstream这个api的注解特性对Java对象与XML字符串相互转换的一些代码示例.    我们很多人都处理过XML文件,也有很多非常成熟的第三方开源软件.如:jdom.dom4j等.虽然他们的功能非常强大,但在使用上还是有点不那么习惯.对于格式比较固定的XML文档,它的结构没有变化或是很少变化,这时将它转换成我们熟悉的Java对象来操作的话,会使工作变得更容易一些,而xstream正好可以满足这一点.    本文所用xstream的版本为:1.4.7 <dependency>