天天看点

Java中的对象转JSON

先说说JSON

JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式。说的直白些,就是以前通过xml方式传输数据太麻烦,于是用JSON去传输数据相对简便。

后台到前台,经常会遇到前台框架需要传入JSON数据。

所以,经过学习,和实战,总结了以下内容:

由于我的项目是maven构建的,所以引入以下依赖:

        <dependency>

            <groupId>net.sf.json-lib</groupId>

            <artifactId>json-lib</artifactId>

            <version>2.4</version>

            <classifier>jdk15</classifier>

        </dependency>

引入以上依赖后,会用到两个类JSONArray、JSONObject 

(请导入import net.sf.json.JSONArray;      import net.sf.json.JSONObject;),不要导入错包了!!!

开始说正题,在实际的开发中,我们经常用到List、Map、String,所以先说说集合中List、Map

     我们知道List中存取的对象,实际上是List组成的一个数组集合,类似XXXList.toString() 就是这个[Wine [id=1, capacity=375.0, brand=卡瓦, price=39, type=起泡酒], Wine [id=2, capacity=750.0, brand=卢卡斯干红, price=89, type=干红]],         (XXXList :你的List集合)

       如何将List转成JSON对象呢??

      JSONArray wineObject = JSONArray.fromObject(XXXList);                       

     如何将Map转成JSON对象呢???

        map.put("code", 0);

        map.put("msg", "");

        map.put("count", 7);                                            

      JSONObject jsonObject = JSONObject.fromObject(map);                             //map就是你声明的Map的对象

   如何将String转成JSON对象呢???

  这就需要固定JSON格式类型的字符串了。比如 String s="{\'p\':1,\'data\':100}";

  用转map的方法去做,  JSONObject jsonObject = JSONObject.fromObject(s);