1. 首先需要导入依赖
```
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.51</version>
</dependency>
```
- 进行转换(后台)
-
某些情况下,后台只能向前台传递字符串,但是需要传输的数据是一个map类型。
Map a=new HashMap(); //以Map对象(k,v)为例 Object obj= JSONArray.toJSON(a); //将其他对象转换为JSON对象 String json=obj.toString(); //将JSON对象转换为字符串
例子:
map a=new HashMap();
a.put(“111”,“abc”);
Object obj= JSONArray.toJSON(a);
System.out.println(“obj:”+obj);
控制台:obj:{"111":"abc"}
输出的obj是Object类型。
要将其转化为String类型: String json=obj.toString();
-
某些情况下,后台需要将JSON字符串,转换为map
- 以下六种实现方式均可:
Map maps = (Map)JSON.parse(str); Map mapTypes = JSON.parseObject(str); Map mapType = JSON.parseObject(str,Map.class); Map json = (Map) JSONObject.parse(str); JSONObject jsonObject = JSONObject.parseObject(str); Map mapObj = JSONObject.parseObject(str,Map.class);
- 当然,前台也需要将接收到的JSON字符串转化为Object或者map
JSON.parse(json) // 将JSON字符串强转为JSON对象
Object.keys(JSON.parse()); //结果为JSON对象的所有key,是一个数组