Maison  >  Article  >  Java  >  Quel package Java utilise-t-il pour analyser JSON ?

Quel package Java utilise-t-il pour analyser JSON ?

(*-*)浩
(*-*)浩original
2019-05-15 17:49:445335parcourir

Toolkitorg.json.jar est une boîte à outils légère de construction et d'analyse JSON sous JAVA. Elle comprend également la conversion de JSON en XML, les en-têtes HTTP, les cookies et le CDL.

Utilisation recommandée ici : Alibaba FastJson est une boîte à outils de traitement Json, comprenant la "sérialisation" et la "désérialisation". Elle a les caractéristiques suivantes :
Vitesse la plus rapide, test Cela montre que fastjson a extrêmement performances rapides, surpassant tout autre analyseur Java Json. Y compris JackJson, qui prétend être le plus rapide

Cours recommandés : Tutoriel Java.

Quel package Java utilise-t-il pour analyser JSON ?

Puissant, prend entièrement en charge les beans Java, les collections, les cartes, les dates, les énumérations, prend en charge les paradigmes et l'introspection n'a aucune dépendance et peut s'exécuter directement sur Java SE 5.0 ou supérieur ; . Prend en charge Android ;

La classe d'entrée de l'API Fastjson est com.alibaba.fastjson.JSON. Les opérations de sérialisation courantes peuvent être effectuées directement via des méthodes statiques sur la classe JSON.

public static final Object parse(String text); // Analyser le texte JSON dans JSONObject ou JSONArray public static final JSONObject parseObject(String text); // Analyser le texte JSON dans JSONObject

public static final T parseObject(String text, Class clazz); // Analyser le texte JSON dans JavaBean

public static final JSONArray parseArray(String text); // Analyser le texte JSON dans JSONArray

public static final List parseArray (String text, Class clazz); //Analyser le texte JSON dans une collection JavaBean
public static final String toJSONString(Object object); //Sérialiser JavaBean en texte JSON

public static final String toJSONString(Object object, boolean PrettyFormat); / Sérialisez JavaBean en texte JSON formaté

public static final Object toJSON(Object javaObject); Convertissez JavaBean en JSONObject ou JSONArray.


Les méthodes ci-dessus sont courantes dans certains projets.


Voici le code que j'ai écrit pour m'entraîner :

package com.test;
 
public class TestPerson {
    private int age;
    private String name;
     
    public TestPerson(){
         
    }
     
    public TestPerson(int age,String name){
        this.age=age;
        this.name=name;
    }
     
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}
 
 
 
package com.test;
import java.util.*;
 
import com.alibaba.fastjson.*;
 
public final class TestFastJson {
 
    public static void main(String[] args) {
        // TODO Auto-generated method stub
         
        TestPerson json = new TestPerson(19,"李明");
        List<TestPerson> list = new ArrayList<TestPerson>();
        list.add(json);
        list.add(new TestPerson(12,"张三"));
        //将集合或者对象序例化成JSON
        System.out.println(JSON.toJSON(json));
        System.out.println( JSON.toJSON(list) );
        //Json串反序列化成对象
        TestPerson person = JSON.parseObject("{\"name\":\"李明\",\"age\":19}", TestPerson.class);
        System.out.printf("name:%s,age:%d\n",person.getName(),person.getAge());
         
        String str = "[{\"name\":\"李明\",\"age\":19},{\"name\":\"张三\",\"age\":12}]";
        //数组对象反序列化成集合
        List<TestPerson> listPerson = JSON.parseArray(str,TestPerson.class);
         
        for(TestPerson item : listPerson){
            System.out.println( item.getName() );
            System.out.println( item.getAge());
        }
         
        //没有对象直接解析JSON对象
        JSONObject jobj = JSON.parseObject("{\"name\":\"李明\",\"age\":19}");
        System.out.printf("name:%s,age:%d\n",jobj.getString("name"),jobj.getBigInteger("age"));
         
        //没有对象直接解析JSON数组
        JSONArray jarr = JSON.parseArray("[{\"name\":\"李明\",\"age\":19},{\"name\":\"张三\",\"age\":12}]");
         
        for(int i=0,len=jarr.size();i<len;i++){
            JSONObject temp=  jarr.getJSONObject(i);
            System.out.printf("name:%s,age:%d\n",temp.getString("name"),temp.getBigInteger("age"));
        }
         
        for(Object obj:jarr){
            System.out.println(obj.toString());
        }
         
    }
 
}

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
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