zoukankan      html  css  js  c++  java
  • Json,Gson,FastJson解析笔记

     Json,Gson,FastJson解析笔记

    1.将JavaBean转换成Json对象:

    1. public static String CreatJsonFromObject(Object key,Object value)  
    2.     {  
    3.         JSONObject JObj =new JSONObject();  
    4.         JObj.put(key, value);  
    5.         return JObj.toString();  
    6.     }  

    2.解析Json:

    1. public static  Person parseJsonPerson(String key,String jsonStr)  
    2.   {  
    3.       System.out.print(key+"-->"+jsonStr);  
    4.       Person person =new Person();  
    5.       JSONObject jobj;  
    6.       try  
    7.       {  
    8.           jobj = new JSONObject(jsonStr);  
    9.           JSONObject personObj =jobj.getJSONObject(key);  
    10.           person.setAge(personObj.getInt("age"));  
    11.           person.setName(personObj.getString("name"));  
    12.           person.setSex(personObj.getString("sex"));  
    13.       }  
    14.       catch (JSONException e)  
    15.       {  
    16.           e.printStackTrace();  
    17.       }  
    18.       return person;  
    19.        
    20.   }  
    21.     
    22.   public static List<Person> parseJsonListPerson(String key,String jsonStr)  
    23.   {  
    24.       System.out.print(key+"-->"+jsonStr);  
    25.       List<Personlist=new ArrayList<Person>();  
    26.       try  
    27.       {  
    28.           JSONObject jobj;  
    29.           jobj = new JSONObject(jsonStr);  
    30.           JSONArray personArr =jobj.getJSONArray(key);  
    31.           for(int i=0;i<personArr.length();i++)  
    32.           {  
    33.               JSONObject personObj = personArr.getJSONObject(i);  
    34.               Person person =new Person();  
    35.               person.setAge(personObj.getInt("age"));  
    36.               person.setName(personObj.getString("name"));  
    37.               person.setSex(personObj.getString("sex"));  
    38.               list.add(person);  
    39.           }  
    40.       }  
    41.       catch (JSONException e)  
    42.       {  
    43.           // TODO Auto-generated catch block  
    44.           e.printStackTrace();  
    45.       }  
    46.       return list;  
    47.   }  
    48.     
    49.   public static List<String> parseJsonListString(String key,String jsonStr)  
    50.   {  
    51.       System.out.print(key+"-->"+jsonStr);  
    52.       List<Stringlist =new ArrayList<String>();  
    53.       try  
    54.       {  
    55.           JSONObject jobj;  
    56.           jobj = new JSONObject(jsonStr);  
    57.           JSONArray personArr =jobj.getJSONArray(key);  
    58.           for(int i=0;i<personArr.length();i++)  
    59.           {  
    60.               String personObj = personArr.getString(i);  
    61.               list.add(personObj);  
    62.           }  
    63.       }  
    64.       catch (JSONException e)  
    65.       {  
    66.           // TODO Auto-generated catch block  
    67.           e.printStackTrace();  
    68.       }  
    69.       return list;  
    70.   }  
    71.     
    72.   public static List<Map<String, Object>> parseJsonListMap(String key,String jsonStr)  
    73.   {  
    74.       System.out.print(key+"-->"+jsonStr);  
    75.       List<Map<String, Object>list =new ArrayList<Map<String,Object>>();  
    76.       try  
    77.       {  
    78.           JSONObject jobj;  
    79.           jobj = new JSONObject(jsonStr);  
    80.           JSONArray personArr =jobj.getJSONArray(key);  
    81.           for(int i=0;i<personArr.length();i++)  
    82.           {  
    83.               JSONObject personObj = personArr.getJSONObject(i);  
    84.               Iterator<Stringset =personObj.keys();  
    85.               while(set.hasNext())  
    86.               {  
    87.                   String tempKey =set.next();  
    88.                   Object tempValue =personObj.get(tempKey);  
    89.                   HashMap<String,Objectmap =new HashMap<String,Object>();  
    90.                   //注意tempValue可能为空  
    91.                   if(tempValue == null)  
    92.                   {  
    93.                       tempValue="";  
    94.                   }  
    95.                   map.put(tempKey, tempValue);  
    96.                   list.add(map);  
    97.               }  
    98.           }  
    99.             
    100.       }  
    101.       catch (JSONException e)  
    102.       {  
    103.           // TODO Auto-generated catch block  
    104.           e.printStackTrace();  
    105.       }  
    106.         
    107.         
    108.       return list;  
    109.   }  


    Gson:

    1.将JavaBean转换成Gson String

    1. public static String CreatJsonFromObject(Object value)  
    2. {  
    3.     Gson gson =new Gson();  
    4.     return gson.toJson(value);  
    5.       
    6. }  

    2.解析Gson String

    1. public static <T> T getPerson(String Json, Class<T> cls)  
    2.    {  
    3.        Gson gson = new Gson();  
    4.        T t = gson.fromJson(Json, cls);  
    5.        return t;  
    6.    }  
    7.      
    8.   public static <T> List<T> getPersons(String Json, Class<T> Type)  
    9.    {  
    10.        List<T> list = new Gson().fromJson(Json, new TypeToken<List<T>>()  
    11.        {  
    12.        }.getType());  
    13.        return list;  
    14.    }  
    15.      
    16.   public  static List<String> getString(String Json)  
    17.    {  
    18.        List<String> retStr = new Gson().fromJson(Json, new TypeToken<List<String>>()  
    19.        {  
    20.        }.getType());  
    21.        return retStr;  
    22.    }  
    23.      
    24.   public   static List<Map<String, Object>> getListMap(String Json)  
    25.    {  
    26.        List<Map<String, Object>> retStr = new Gson().fromJson(Json, new TypeToken<List<Map<String, Object>>>()  
    27.        {  
    28.        }.getType());  
    29.        return retStr;  
    30.    }  

    FastJson:

    1.将JavaBean转换成FastJson String

    服务端利用上述方式实现

    2.解析FastJson String

    1. public static <T> T getPerson(String jsonStr, Class<T> cls)  
    2.    {  
    3.        T t = JSON.parseObject(jsonStr, cls);  
    4.        return t;  
    5.    }  
    6.      
    7.    public static <T> List<T> getPersons(String jsonStr, Class<T> cls)  
    8.    {  
    9.        List<T> list = JSON.parseArray(jsonStr, cls);  
    10.        return list;  
    11.    }  
    12.      
    13.    /** 
    14.     * @param jsonStr 
    15.     * @return 
    16.     */  
    17.    public static List<Map<String, Object>> getListMap(String jsonStr)  
    18.    {  
    19.        List<Map<String, Object>> list = JSON.parseObject(jsonStr, new TypeReference<List<Map<String, Object>>>()  
    20.        {  
    21.        });  
    22.        return list;  
    23.    }  
  • 相关阅读:
    ClickOne :添加ClickOnce程序的快捷方式
    C#: 通过html调用WinForm 。。。。。
    JQuery:常用方法一览
    Jquery:Ajax解析XML数据(同步及异步调用)
    系统管理:服务器超级隐藏账户的建立与检测大全[转载]
    Jquery :动态给Table指定行或尾行插入tr和相关,遍历页面所有控件获取id
    .Net : webBrowser弹出新页面,在当前Form窗体打开,可设置屏蔽当前网页的js错误。。。。
    Visual Studio 设置:包括根据不同类型的开发活动对集成开发环境 (IDE) 所做的各种自定义设置
    VB.Net : ApplicationEvents类中,创建主程序的快捷方式 , 捕获程序未Try的错误及抛出相关的类和方法名 , 是否联机等相关。。
    [转载]JavaScript 图片预览效果
  • 原文地址:https://www.cnblogs.com/timssd/p/4966093.html
Copyright © 2011-2022 走看看