Cet article présente principalement l'utilisation de FastJson par Java pour analyser les données Json. Fastjson est un analyseur et générateur JSON avec d'excellentes performances implémenté en langage Java. Ceux qui sont intéressés peuvent en apprendre davantage.
fastjson est un analyseur et générateur JSON extrêmement performant implémenté en langage Java, développé par les ingénieurs d'Alibaba.
Caractéristiques principales :
Rapide FAST (plus rapide que tout autre analyseur et générateur basé sur Java, y compris Jackson)
Puissant (prend en charge les classes JDK ordinaires, y compris n'importe quelle classe, collection, carte, date ou énumération Java Bean)
Zéro dépendance (aucune dépendance sur d'autres bibliothèques de classes à l'exception du JDK)
1. Générer Json :
JavaBean, List
String jsonString = JSON.toJSONString(obj);
2. Analyser Json :
(1)JavaBean
Class class= JSON.parseObject(jsonString, Class.class);
(2) Liste
List<Class> class=JSON.parseArray((jsonString, Class.class);
(3) Liste
List<String> listString = JSON.parseArray(jsonString, String.class);
(4 ) List
Copier le code Le code est le suivant :
List
{"totalRecords":2615, "result":{"code":"200","status":"success"}, "list":[{"unuAbnId":"0bcd930f-014c-1000-e003-5f160a0d0114", "entNo":"1c2e4ca8-00fa-1000-e000-74590a76bf0f", "regNO":"442000600169663", "entName":"x", "entType":"9910 ", "speCause":"3", "abnTime":"Mar 13, 2015 12:00:00 AM", "decOrg":"442020", "entNameUrl":"<a href=\".. ", "auditingFileNo":"15000684990326", "abnormalID":"fd74013d-014b-1000-e00a-72970a0d0114"},{...},{...},...], "pageNo":1, "pageSize":8, "url":"main/abnInfoPage", "selList":[{"unuAbnId":"0bcd930f-014c-1000-e003-5f0f0a0d0114", "entNo":"16da9629-0131-1000-e005-3effc0a803a8", "regNO":"442000602187424", "entName":"x", "entType":"9910 ", "speCause":"3", "abnTime":"Mar 13, 2015 12:00:00 AM", "decOrg":"442020", "entNameUrl":"<a href=\"..\">", "auditingFileNo":"15000684990319", "abnormalID":"fd74013d-014b-1000-e00a-72970a0d0114"},{...},{...},...], "topPageNo":1, "totalPages":327, "previousPageNo":0, "nextPageNo":2, "bottomPageNo":327 }
La couche externe est JSONObject, la liste et la selList à l'intérieur sont JSONArrary et la couche interne est JSONObject. Le résultat est également JSONObject
JSONObject jsonObj = JSON.parseObject(rawText); JSONArray result = jsonObj.getJSONArray("selList"); List<Link> links= JSON.parseArray(result.toJSONString(),Link.class);
Peut être traité davantage dans la méthode setter
public void setEntNameUrl(String entNameUrl) { this.entNameUrl =Html.create(entNameUrl).links().get(); }
JSONObject jsonObj = new JSONObject(rawText); JSONArray jsonArray = result .getJSONArray("selList"); for (int i = 0; i < jsonArray.length; i++) { }