1. 程式人生 > >fastJson轉換對象與字符串

fastJson轉換對象與字符串

fastJson轉換對象與字符串

static class TempClass{
private String name;
private int age;
public String getName() {return name;}
public void setName(String name) {this.name = name;}
public int getAge() {return age;}
public void setAge(int age) {this.age = age;}
}
public static void main(String[] args) {
Map<String, List<Test.TempClass>> map = new HashMap<String, List<Test.TempClass>>();
Random random = new Random();
for(int i = 1 ; i < 3 ;i++){
List<Test.TempClass> list = new ArrayList<Test.TempClass>();
for(int j = 1 ; j < 3 ;j++) {
TempClass tempClass = new TempClass();
int r = random.nextInt(500);
tempClass.name = r +"name";
tempClass.age = r ;
list.add(tempClass);
}
map.put(UUID.randomUUID().toString(),list);
}
//===============對象轉字符串=====================================
String jsonString = JSON.toJSONString(map);
System.out.println(jsonString);
//===============字符串轉對象===========================
Map<String, List<?>> mapObj = (HashMap<String, List<?>>)JSON.parseObject(jsonString, HashMap.class);
Map<String, List<TempClass>> mapList = (HashMap<String, List<TempClass>>)JSON.parseObject(jsonString, HashMap.class);
for(Map.Entry<String, List<?>> entry : mapObj.entrySet()){
// 此時entry.getValue()並不具備類型信息,需要再做深層的解析
List<TempClass> list = (List<TempClass>)JSONArray.parseArray(entry.getValue().toString(), TempClass.class);
mapList.put(entry.getKey(),list);
}
}

fastJson轉換對象與字符串