FastJson的簡(jiǎn)單使用

1、生成Json字符串

JavaBean、Map、List<JavaBean>、List<String>、List<Map<String,Object>>

String jsonString = JSON.toJSONString(obj); 

例1:將Map轉(zhuǎn)成JSON字符串

Map<String, Object> map = new HashMap<String, Object>();
map.put("key1", "One");
map.put("key2", "Two");  
Object objMap= JSONArray.toJSON(map);
String str= JSON.toJSONString(map);

輸出結(jié)果:

{"key1":"One","key2":"Two"}

例2:自定義JavaBean User轉(zhuǎn)成JSON字符串。

Person person = new Person();
person.setAge(20);
person.setName("Jon");
String str = JSON.toJSONString(person);

輸出結(jié)果:

{"age":"20","name":"Jon"}

例3:List<Map>轉(zhuǎn)成JSON字符串。

List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();      
Map<String, Object> map1 = new HashMap<String, Object>();
map1.put("key1", "One");
map1.put("key2", "Two");         
Map<String, Object> map2 = new HashMap<String, Object>();
map2.put("key1", "Three");
map2.put("key2", "Four");       
list.add(map1);
list.add(map2);  
String listJsonStr = JSON.toJSONString(list);

輸出結(jié)果:

[{"key1":"One","key2":"Two"},{"key3":"Three","key4":"Four"}]
2、解析Json字符串
  • Json字符串轉(zhuǎn)JavaBean
Class class= JSON.parseObject(jsonString, Class.class); 
Person person = new Person();
person.setAge(20);
person.setName("Jon");
String str = JSON.toJSONString(person);
//轉(zhuǎn)換Person類
Person obj= JSON.parseObject(str , Person.class); 
//轉(zhuǎn)換JSONObject對(duì)象
JSONObject obj2= JSON.parseObject(str); 
  • List<JavaBean>
List<Class> class=JSON.parseArray((jsonString, Class.class); 
  • List<String>
List<String> listString = JSON.parseArray(jsonString, String.class); 
  • List<Map<String,Object>>
List<Map> listString = JSON.parseArray(jsonString, String.class); 

3、前端字符串轉(zhuǎn)JSON

  • jQuery插件支持的轉(zhuǎn)換方式:
$.parseJSON( jsonstr ); 
function strToJson(str) {
    return JSON.parse(str);
}
  • 瀏覽器支持的轉(zhuǎn)換方式(Firefox,chrome,opera,safari,ie9,ie8)等瀏覽器:
    注:ie8(兼容模式),ie7和ie6沒(méi)有JSON對(duì)象,推薦采用JSON官方的方式,引入json.js。
JSON.parse(jsonstr); //可以將json字符串轉(zhuǎn)換成json對(duì)象
JSON.stringify(jsonobj); //可以將json對(duì)象轉(zhuǎn)換成json對(duì)符串
  • Javascript支持的轉(zhuǎn)換方式:
eval('(' + jsonstr + ')'); 
function strToJson(str) {
    var json = eval('(' + str + ')');
    return json;
}

new Function形式,比較怪異

function strToJson(str) {
    var json = (new Function("return " + str))();
    return json;
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容