背景
JSON在短時間內迅速風靡全球,原因有很多如WEB2.0的推動、JSON易用、高性能等等,互聯網科技巨頭也出了自家json,google有GSON阿里有fastjson,今天我主要講下fastjson的編程開發案例。
JSON優點
- JSON(JavaScript Object Notation) 是一種輕量級的數據交換格式。
- JSON具體“自我描述性”【方便人閱讀和編寫。同時也易於機器解析和生成。】
- JSON採用完全獨立於語言的文本格式
- JavaScript和JSON無縫集成的
- 【應用場景豐富】Redis和MongoDB都採用json的格式存儲,阿里、騰訊開放平臺接口API都是json格式,json已經無處不在,程序員必備。
學習目標
- 能利用fastjson熟練開發
- 利用json設計高擴展性功能
代碼舉例
------程序員們充電開始--------
----------案例1 程序員使用最頻繁的json轉------------
----------案例2 程序員經常要json轉對象------------
----------案例3 程序員還要map轉json------------
----------案例4 程序員 json轉map用法------------
----------案例5 軟件工程師們 json集合轉成集合對象------------
----------案例6繼續給軟件工程師來點乾貨 之json註解和泛型用法------------
前面5個案例是json基本用法,第6個稍微高級點
下面是結果
下面是結果
邏輯說明:
- Lists.newArrayList是google Guava工具,不清楚見我另外一篇文章專本講google Guava工具。
- AbstractSchool就我抽象出來的學校的人,利用泛型來實現擴展。在實戰項目中響應結果對象就可以設計成這樣的AbstractResponse,特別是查詢業務。
- JSONField註解,看例子也明白是什麼意思。
注意
- 建議json值的類型就用字符和int等簡單類型,用複雜類型序列化有風險。
- 建議用官方最新maven版本,漏洞一直在修復。
- json嵌套不要超過4層。
- 設計表的大字段建議存json格式數據擴展性極好。
如果對你有幫助請關注收藏轉發,程序汪汪才更加有動力分享,有錯誤請指點,歡迎來交流
閱讀更多 程序汪汪 的文章