json的使用入門

           JSON采用完全獨立于語言的文本格式,易于人閱讀和編寫,同時也易于機器解析和生成。所以是數據中轉與傳輸的優選。下面就是經常用到的一些特性。本文所指都是json-lib的用法
          1.json--->List<YOUR_CLASS>
           
           1       List<YOUR_CLASS> list=new ArrayList<YOUR_CLASS>(); 
                        JSONArray jsonArray = JSONArray.fromObject(fmsStr);
           2        JsonConfig jc=new JsonConfig();
           3        jc.setRootClass(YOUR_CLASS.class);
           4        jc.setArrayMode(JsonConfig.MODE_OBJECT_ARRAY);
           5        int i=1;
           6        YOUR_CLASS[] oArray=(YOUR_CLASS[]) JSONArray.toArray(jsonArray, jc);
           7        for(YOUR_CLASSfms : oArray){
           8            list.add(fms);
           9        }

          2.json-->YOUR_CLASS
          1        JSONObject json=JSONObject.fromObject(fmsStr);
          2        FMS fms=(FMS)JSONObject.toBean(json, FMS.class);
          3.json--> bean轉換日期格式
          1           JSONObject json=JSONObject.fromObject(fmsStr);
          2       String[] dateFormats = new String[]  {"yyyy-MM-dd"};
          3          JSONUtils.getMorpherRegistry().registerMorpher(new DateMorpher(dateFormats));
          4          FMS fms=(FMS)JSONObject.toBean(json, FMS.class);
          5
          6其中fms有一個屬性day:1991-12-2
          4.json-->bean過濾一些不需要或json字符串中沒有賦值的項使用JSONConfig
                  JSONArray jsonArray = JSONArray.fromObject([{a:"astr",b:"bstr",c:"cstr",d:"dstr"},{a:"astr1",b:"bstr1",c:"cstr1",d:"dstr1"}]);
                  JsonConfig jc
          =new JsonConfig();
                  jc.setRootClass(FMS.
          class);
                  String[] dateFormats 
          = new String[] {"yyyy-MM-dd"};
                  JSONUtils.getMorpherRegistry().registerMorpher(
          new DateMorpher(dateFormats));
                  jc.setArrayMode(JsonConfig.MODE_OBJECT_ARRAY);
                  jc.setJsonPropertyFilter(
          new PropertyFilter(){
                      
          public boolean apply(Object sourse, String name, Object value) {
                          
          if(name.equals("a")||name.equals("b")||name.equals("c")||name.equals("d")){
                              
          return true;
                          }

                          
          else{
                              
          return false;
                          }

                      }

                      
                  }
          );
                  FMS[] oArray
          =(FMS[]) JSONArray.toArray(jsonArray, jc);


          FMS
          -->有 a b c d 屬性



          posted on 2009-07-10 14:18 star11th 閱讀(712) 評論(0)  編輯  收藏 所屬分類: 周邊技術


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          <2009年7月>
          2829301234
          567891011
          12131415161718
          19202122232425
          2627282930311
          2345678

          導航

          統計

          常用鏈接

          留言簿

          隨筆分類

          隨筆檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 崇文区| 海安县| 海盐县| 台前县| 泌阳县| 和田市| 潮安县| 扎鲁特旗| 高要市| 景宁| 衡水市| 闵行区| 当阳市| 河池市| 唐河县| 郎溪县| 五大连池市| 新竹市| 大竹县| 来安县| 满洲里市| 太白县| 枝江市| 汉沽区| 涞源县| 武汉市| 嘉定区| 商丘市| 于田县| 汝南县| 合作市| 景东| 洞头县| 嵩明县| 石柱| 通辽市| 阿坝| 辽中县| 额尔古纳市| 安龙县| 荔浦县|