您的位置:首页 > Web前端 > JavaScript

解析json工具类

2015-02-06 10:38 363 查看
package parsejson;

import java.util.List;

import java.util.Map;

import vo.User;

import com.google.gson.Gson;

import com.google.gson.reflect.TypeToken;

public class ParserJSONByGson {

    /**

     * @param args

     */

    public static void main(String[] args) {

        // TODO Auto-generated method stub

        String str = getGSONFromObject(UserData.getsingle());

        System.out.println(str);

        System.out.println(getObjectFromGSON(str,User.class));

        

        //List<User>

        String str1 = getGSONFromObject(UserData.getlist());

        System.out.println(str1);

        System.out.println(getListFromGSON(str1,User.class));

        

        //

        String str2 = getGSONFromObject(UserData.getlistString());

        System.out.println(str2);

        System.out.println(getListFromGSON(str2,String.class));

        

        //

        String str3 = getGSONFromObject(UserData.getListMap());

        System.out.println(str3);

        System.out.println(getListMapFromGSON(str3,Object.class));

        

        

    }

    

    public static String getGSONFromObject(Object obj){

        Gson gson = new Gson();

        return gson.toJson(obj);

    }

    

    //User.class  -->User

    public static <T> T getObjectFromGSON(String jsonStr,Class<T> cls){

         Gson gson = new Gson();

         T t = gson.fromJson(jsonStr,cls);

         return t;

    }

    //List<User>   User  List<User>

    public static <T>List<T> getListFromGSON(String jsonStr,Class<T> cls){

         Gson gson = new Gson();

         List<T> list = gson.fromJson(jsonStr,new TypeToken<List<T>>(){}.getType());

         return list;

    }

    

    public static <T>List<Map<String,T>> getListMapFromGSON(String jsonStr,Class<T> cls){

         Gson gson = new Gson();

         List<Map<String,T>> list = gson.fromJson(jsonStr,new TypeToken<List<Map<String,T>>>(){}.getType());

         return list;

    }

}

package parsejson;

import java.util.List;

import java.util.Map;

import com.alibaba.fastjson.JSON;

import com.alibaba.fastjson.TypeReference;

public class ParserJSONByFastJSON {

    /**

     * @param args

     */

    public static void main(String[] args) {

        // TODO Auto-generated method stub

    }

    

    public static String getJSONFromObject(Object obj){

          return JSON.toJSONString(obj);

    }

    

    public static <T> T getObjectFromJSON(String jsonStr,Class<T> cls){

        return JSON.parseObject(jsonStr,cls);

    }

    

    public static <T>List<T> getListFromJSON(String jsonStr,Class<T> cls){

        return JSON.parseArray(jsonStr,cls);

    }

    

    public static <T>List<Map<String,T>> getListMapFromJSON(String jsonStr,Class<T> cls){

        return JSON.parseObject(jsonStr,new TypeReference<List<Map<String,T>>>(){}.getType());

    }

    

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android json