Maison > Java > javaDidacticiel > Java utilise FastJson pour analyser les données Json

Java utilise FastJson pour analyser les données Json

高洛峰
Libérer: 2017-02-11 16:04:18
original
2112 Les gens l'ont consulté

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, List, List< Map>

String jsonString = JSON.toJSONString(obj);
Copier après la connexion

2. Analyser Json :

(1)JavaBean

Class class= JSON.parseObject(jsonString, Class.class);
Copier après la connexion

(2) Liste

List<Class> class=JSON.parseArray((jsonString, Class.class);
Copier après la connexion

(3) Liste

List<String> listString = JSON.parseArray(jsonString, String.class);
Copier après la connexion

(4 ) List>


Copier le code Le code est le suivant :


List> listMap = JSON.parseObject(jsonString, new TypeReference>>(){}); Maintenant, il existe de telles données json :

{"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 
}
Copier après la connexion
La liste contient 2615 éléments de données et selList contient 8 éléments de données. Le but est d'extraire le lien. de entNameUrl dans selList (ne contient pas de href =)

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);
Copier après la connexion
La classe Link doit avoir l'attribut entNameUrl, ainsi que les méthodes setter et getter.

Peut être traité davantage dans la méthode setter


 public void setEntNameUrl(String entNameUrl) { 
   this.entNameUrl =Html.create(entNameUrl).links().get(); 
}
Copier après la connexion
Une méthode personnalisée est utilisée ici, sa fonction Retirez simplement le lien dans la chaîne.

La classe Link peut contenir abnTime, entName, regNO et d'autres attributs ainsi que les méthodes getter et setter correspondantes, et FastJson peut les mapper automatiquement.

Il peut également être traité par les méthodes suivantes :


JSONObject jsonObj = new JSONObject(rawText); 
JSONArray jsonArray = result .getJSONArray("selList"); 
for (int i = 0; i < jsonArray.length; i++) {   
}
Copier après la connexion
Ce qui précède représente l'intégralité du contenu de cet article, J'espère que cela sera utile à tout le monde et j'espère que tout le monde soutiendra le site Web PHP chinois.

Pour plus d'articles liés à Java utilisant FastJson pour analyser les données Json, veuillez faire attention au site Web PHP chinois !

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal