核心包
<dependency>
<groupId>net.sf.dozer</groupId>
<artifactId>dozer</artifactId>
<version>5.5.1</version>
</dependency>
代码:
public void Test(){
String s = "{\n" +
" \"msg\": \"success\",\n" +
" \"code\": 200,\n" +
" \"data\": \"{\\\"msg\\\":\\\"success\\\",\\\"code\\\":200,\\\"data\\\":[{\\\"deptName\\\":null,\\\"deptCode\\\":null}]}\"\n" +
"}";
Map map = JSON.parseObject(s, Map.class);
String ss1 = map.get("data").toString();
Map map1 = JSON.parseObject(ss1, Map.class);
// String ss2 = map1.get("data").toString();
List<PerAuthorityEntity> data = mapList((Collection) map1.get("data"),
PerAuthorityEntity.class);
System.out.println(data);
}
public static <T> List<T> mapList(Collection sourceList, Class<T> destinationClass) {
DozerBeanMapper dozer = new DozerBeanMapper();
List<T> destinationList = new ArrayList<>();
for (Object sourceObject : sourceList) {
T destinationObject = dozer.map(sourceObject, destinationClass);
destinationList.add(destinationObject);
}
return destinationList;
}
方法二:
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
String s = doGet(authUrl, params);
JSONArray objects = new JSONArray();
objects = JSON.parseArray(s)