首先,有一个实体类,KvmCluster(不用管父类):
public class KvmCluster extends BaseReport{
/**
* 时间
*/
public String timeStamp;
/**
* 主机名
*/
public String nodeName;
/**
* cpu核数
*/
public String avgNumberCpu;
/**
* 内存大小
*/
public String avgTotalMemory;
/**
* cpu最高使用率
*/
public String maxCpuUtilization;
/**
* cpu平均使用率
*/
public String avgCpuUtilization;
/**
* 内存最高使用率
*/
public String maxMemoryUtilization;
/**
* 内存平均使用率
*/
public String avgMemoryUtilization;
}
测试方法:
public static void testRenderJson(){
KvmCluster kc = new KvmCluster();
kc.avgCpuUtilization = i+"111";
kc.avgMemoryUtilization = i+ "222";
kc.avgNumberCpu = i+"333";
renderJSON(kc);
}
测试结果:
{"avgNumberCpu":"333","avgCpuUtilization":"111","avgMemoryUtilization":"222"}
没什么好说得。
List
测试代码:
public static void testRenderJson(){
List list1 = new ArrayList<>();
for(int i=0;i<3;i++){
KvmCluster kc = new KvmCluster();
kc.avgCpuUtilization = i+"111";
kc.avgMemoryUtilization = i+ "222";
kc.avgNumberCpu = i+"333";
list1.add(kc);
}
renderJSON(list1);
}
测试结果:
[{"avgNumberCpu":"0333","avgCpuUtilization":"0111","avgMemoryUtilization":"0222"},{"avgNumberCpu":"1333","avgCpuUtilization":"1111","avgMemoryUtilization":"1222"},{"avgNumberCpu":"2333","avgCpuUtilization":"2111","avgMemoryUtilization":"2222"}]
标准的JsonArray格式
Map
测试代码:
public static void testRenderJson(){
Map map = new HashMap<>();
for(int i=0;i<3;i++){
KvmCluster kc = new KvmCluster();
kc.avgCpuUtilization = i+"111";
kc.avgMemoryUtilization = i+ "222";
kc.avgNumberCpu = i+"333";
map.put("key_"+i, kc);
}
renderJSON(map);
}
测试结果:
{"key_2":{"avgNumberCpu":"2333","avgCpuUtilization":"2111","avgMemoryUtilization":"2222"},"key_1":{"avgNumberCpu":"1333","avgCpuUtilization":"1111","avgMemoryUtilization":"1222"},"key_0":{"avgNumberCpu":"0333","avgCpuUtilization":"0111","avgMemoryUtilization":"0222"}}
Map>
测试代码:
public static void testRenderJson(){
List list1 = new ArrayList<>();
List list2 = new ArrayList<>();
Map> mapList = new HashMap<>();
for(int i=0;i<3;i++){
KvmCluster kc = new KvmCluster();
kc.avgCpuUtilization = i+"111";
kc.avgMemoryUtilization = i+ "222";
kc.avgNumberCpu = i+"333";
list1.add(kc);
}
for(int i=0;i<3;i++){
KvmCluster kc = new KvmCluster();
kc.avgCpuUtilization = i+"aaa";
kc.avgMemoryUtilization = i+ "bbb";
kc.avgNumberCpu = i+"ccc";
list2.add(kc);
}
mapList.put("map1", list1);
mapList.put("map2", list2);
renderJSON(mapList);
}
测试结果:
{"map2":[{"avgNumberCpu":"0ccc","avgCpuUtilization":"0aaa","avgMemoryUtilization":"0bbb"},{"avgNumberCpu":"1ccc","avgCpuUtilization":"1aaa","avgMemoryUtilization":"1bbb"},{"avgNumberCpu":"2ccc","avgCpuUtilization":"2aaa","avgMemoryUtilization":"2bbb"}],"map1":[{"avgNumberCpu":"0333","avgCpuUtilization":"0111","avgMemoryUtilization":"0222"},{"avgNumberCpu":"1333","avgCpuUtilization":"1111","avgMemoryUtilization":"1222"},{"avgNumberCpu":"2333","avgCpuUtilization":"2111","avgMemoryUtilization":"2222"}]}