这节主要用了JSONArray,JSONObject工具类来对实现数据类型的转换,这两个工具类都来自net.sf.json-lib这个包。文末会附上maven依赖。
**
1.json转bean
**
JSONObject jsonObject = JSONObject.fromObject(jsonString);
Object pojo = JSONObject.toBean(jsonObject, pojoClass);
**
2.bean转json
JSONObject json = JSONObject.fromObject(javaObj);
String str = json.toString();
**
3.map转json
**
String str1 = JSONObject.fromObject(map).toString();
**
4.json转map(和1雷同,只是pojoClass固定为Map.class)
**
JSONObject jsonObject = JSONObject.fromObject(jsonString);
Object pojo = JSONObject.toBean(jsonObject, Map.class);
**
5.list转json
**
JSONArray jsonArray = JSONArray.fromObject(list);
String str2 = jsonArray.toString();
**
6.json转list
**
JSONArray jsonArray = JSONArray.fromObject(jsonString);
JSONObject jsonObject;
Object pojoValue;
List list = new ArrayList();
for (int i = 0; i < jsonArray.size(); i++) {
jsonObject = jsonArray.getJSONObject(i);
pojoValue = JSONObject.toBean(jsonObject, pojoClass);
list.add(pojoValue);
}
文末在此,附上json-lib包的依赖,必须要指定jdk版本,不然会报错,因为json-lib包是需要区分jdk版本的:
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>2.4</version>
<classifier>jdk15</classifier><!--指定jdk版本-->
</dependency>