json字符串转java实体对象
1.导入依赖
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.22</version>
</dependency>
2.代码
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import java.util.ArrayList;
import java.util.List;
//将json字符串封装成java实体对象
//jsonStr原json串,class要封装的实体类型
public static <T> T jsonStringToObject(String jsonStr,Class<T> clazz){
if (jsonStr != null && clazz != null) {
return JSONObject.toJavaObject(JSONObject.parseObject(jsonStr), clazz);//通过JSONObject.toBean()方法进行对象间的转换
}
return null;
}
//将json带有集合字符串封装成java集合实体对象
//jsonStr原json字符串,clazz要封装的实体对象类型,key代表json串中要封装的实体类数据的key
public static <T> List<T> jsonStringToObject(String jsonStr,Class<T> clazz,String key){
List<T> tList = new ArrayList<T>();
if (jsonStr != null && key != null && clazz != null) {
JSONArray array = JSONObject.parseObject(jsonStr).getJSONArray(key);
for (int i = 0; i < array.size(); i++) {
T t= JSONObject.toJavaObject((JSONObject) array.get(i), clazz); //通过JSONObject.toBean()方法进行对象间的转换
tList.add(t);
}
}
return tList;
}