parseobject jsonobject
- IT科技
- 關注:1.91W次
一、JSON.parseObject是fastjson中的方法,fastjson 是一個性能很好的Java語言實現的JSON解析器和生成器,來自阿里巴巴的工程師開發。其主要特點是:
1、快速:fastjson採用獨創的算法,將parse的速度提升到極致,超過所有基於Java的json庫,包括曾經號稱最快的jackson;
2、強大:Fastjson完全支援https://json.org的標準(也是Google官方網站收錄的參考實現之一);支援各種JDK類型;包括基本類型、JavaBean、Collection、Map、Enum、泛型等;
3、零依賴:沒有依賴其它任何類庫除了JDK,能夠直接執行在Java SE 5.0以上版本;支援Android;開源 (Apache 2.0)。
二、parseObject(String str)的作用:
JSON.parseObject(String str)是將str轉化爲相應的JSONObject對象,其中str是“鍵值對”形式的json字元串,轉化爲JSONObject對象之後就可以使用其內置的方法,進行各種處理了。
三、FastJson對於JSON格式字元串、JSON對象及JavaBean之間的相互轉換:
1、result格式:
{
"success":"true",
"returnAddress":"123"
}
JSONObject jsonObject=JSON.parseObject(result); //轉換成object
jsonObject.getString("returnAddress") //獲取object中returnAddress字段;
2、result格式:
{
"success":"true",
"data":{
"shop_uid":"123"
}
}
JSONObject shop_user =JSON.parseObject(result);
JSON.parseObject(shop_user.getString("data")).getString("shop_uid")
3、result格式:
{
"success":"true",
"data":[{
"shop_uid":"123"
},
{
"shop_name":"張三"
}]
}
JSONArray detail = JSON.parseArray(result);
for (int i=0; i<detail.size();i++){
if(detail.get(i)!=null||!detail.get(i).equals("")){
JSONArray detailChild =detail.getJSONArray(i);
if(detailChild.getInteger(1)>Integer.valueOf(ship.get("shiptime").toString())){
ship.put("shiptime",detailChild.getInteger(1));
ship.put("desc",detailChild.getString(0));
}
}
}
JSON轉javaBean
1.1 JSONobject=>javaBean
JSONObject contentChild = contentsArray.getJSONObject(i);
QCCustomerScore.CustomerCore customerCore = JSON
.toJavaObject(contentChild, QCCustomerScore.CustomerCore.class);
1.2 String轉javaBean
- 文章版權屬於文章作者所有,轉載請註明 https://shqsg.com/zh-hant/dianzi/z9wn28.html