fastjson的簡單使用

jopen 9年前發布 | 2K 次閱讀 Java fastjson

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.alibaba.fastjson.JSON;

/**

  • fastjson類庫的簡單使用.
  • 應用:前臺有一個json字符串,此json字符串是由包含List的Map轉換的json字符串,傳到后臺后,
  • 現需要將其作為一個元素放入map,然后再將map轉換為json字符串推,并通過第三方接口推送給客戶端,
  • 推送的時候提示json格式錯誤,究其原因:原來需要將前臺傳過來的json字符串parse成對象后,再作為
  • 一個元素放入map,然后再將map轉換為json字符串,最后通過第三方接口推送給客戶端,success!
  • @author IluckySi
  • @since 20141209 */
    public class FastJsonUtilTest {

    public static void main(String[] args) {

     //將包含List的Map轉換的json字符串.  
     Map<Object, Object> map1 = new HashMap<Object, Object>();  
     List<Object> list1 = new ArrayList<Object>();  
     list1.add("le1");  
     list1.add("le2");  
     map1.put("m1e1", list1);  
     map1.put("m1e2", "m1e2");  
     map1.put("m1e3", "m1e3");  
     String map1Json = JSON.toJSONString(map1);  
     System.out.println("將包含List的Map轉換的json字符串:" + map1Json);  
    
     //包含List的Map轉換為json字符串作為元素的map轉換為json字符串.  
     Map<Object, Object> map2 = new HashMap<Object, Object>();  
     map2.put("m2e1", map1Json);  
     map2.put("m2e2", "m2e2");  
     map2.put("m2e3", "m2e3");  
     String map2Json = JSON.toJSONString(map2);  
     System.out.println("將(包含List的Map轉換的)json字符串作為元素的map轉換為json字符串:" + map2Json);  
    
     //將(包含List的Map轉換的json字符串,繼而又將這個字符串轉換回)map作為元素的map轉換為json字符串.  
     Map<Object, Object> map3 = new HashMap<Object, Object>();  
     map3.put("m3e1", JSON.parse(map1Json));  
     map3.put("m3e2", "m3e2");  
     map3.put("m3e3", "m3e3");  
     String map3Json = JSON.toJSONString(map3);  
     System.out.println("將(包含List的Map轉換的json字符串,繼而又將這個字符串轉換回)map作為元素的map轉換為json字符串:" + map3Json);  
    

    }
    }
    /* 輸出結果: 將包含List的Map轉換的json字符串:{"m1e1":["le1","le2"],"m1e2":"m1e2","m1e3":"m1e3"} 將(包含List的Map轉換的)json字符串作為元素的map轉換為json字符串:{"m2e1":"{\"m1e1\":[\"le1\",\"le2\"],\"m1e2\":\"m1e2\",\"m1e3\":\"m1e3\"}","m2e2":"m2e2","m2e3":"m2e3"} 將(包含List的Map轉換的json字符串,繼而又將這個字符串轉換回)map作為元素的map轉換為json字符串:{"m3e1":{"m1e1":["le1","le2"],"m1e2":"m1e2","m1e3":"m1e3"},"m3e2":"m3e2","m3e3":"m3e3"} / </pre>

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!