1、com.alibaba.fastjson.JSONObject;
字符串格式:
Ⅰ、
“{
“myuser”: {
“username”: “myuser”,
“roles”: [
“superuser”,
“other_role1”
],
“full_name”: “myuser”,
“email”: null,
“metadata”: {},
“enabled”: true
}
}”
解析方式:
public static Map<String, Object> getJsonToMap(String json) {
JSONObject jsonObject = JSONObject.parseObject(json);
Map<String, Object> valueMap = new HashMap<>();
valueMap.putAll(jsonObject);
return valueMap;
}
Ⅱ、
“[
{
“id”: “iFix”,
“pid”: “2808”,
“ip”: “192.168.197.128”,
“port”: “9300”,
“http”: “192.168.197.128:9200”,
“diskTotal”: “56.7gb”,
“diskUsed”: “33.2gb”,
“diskAvail”: “23.4gb”,
“diskUsedPercent”: “58.62”,
“heapCurrent”: “457.4mb”,
“heapPercent”: “45”,
“heapMax”: “1007.3mb”,
“ramCurrent”: “4.6gb”,
“ramPercent”: “60”,
“ramMax”: “7.6gb”,
“cpu”: “6”,
“load_1m”: “0.30”,
“load_5m”: “0.26”,
“load_15m”: “0.10”,
“uptime”: “1d”,
“nodeRole”: “mdi”,
“master”: “*”,
“name”: “192.168.197.128”,
“queryCacheMemory”: “419.4kb”,
“requestCacheMemory”: “3.9mb”,
“requestCacheHitCount”: “102845”,
“requestCacheMissCount”: “11354”,
“indexingDeleteCurrent”: “0”,
“indexingDeleteTime”: “577ms”,
“indexingDeleteTotal”: “7850”,
“indexingIndexCurrent”: “0”,
“indexingIndexTime”: “4.1m”,
“indexingIndexTotal”: “3496461”,
“indexingIndexFailed”: “0”
}
]”
解析方式:
List<MasterNode> mm = JSONObject.parseArray(ss, MasterNode.class);
2、net.sf.json.JSONObject
//将list 的实体对象的字符串解析回实体对象
public List<Object> getJsonToList(String json, Class<T> clazz) {
//把String转换为json
List<Object> ob = new ArrayList<>();
JSONArray jsonArray = JSONArray.fromObject(json);
Collection collection = JSONArray.toCollection(jsonArray,clazz);
if (null != collection && !collection.isEmpty()) {
Iterator it = collection.iterator();
while (it.hasNext()) {
ob.add(it.next());
}
}
return ob;
}
POM:
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.4</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.47</version>
</dependency>
<!-- json jar包 -->
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>2.4</version>
<classifier>jdk15</classifier>
</dependency>