Json對映為Map,避免定義過多pojo類

2021-09-07 09:35:49 字數 851 閱讀 7529

我們在開發過程中經常會遇到解析json字串的情況,這時候採用開源工具可以快速將json字串對映為pojo物件。而在某些業務場景中,往往為了獲得json字串中某個屬性的值而不得不定義乙個pojo類,從而形成與json字串的對應。一旦json格式發生改變。pojo類也不得不作相應修改。

這時候可以考慮將json與map對映。只要知道具體的屬性名即可獲取屬性值。

假設有如下json字串

}

由於json格式都是鍵值對形式存在,所以直接對映map型別即可。這裡採用gson作為json解析工具。

gson gson = new

gsonbuilder().create();

string json = "}";

map map = gson.fromjson(json, map.class);

如何取值?傳統迴圈方式

這裡用.作為屬性名之間的分隔符。

ognl方式,採用該方式需引入ognl依賴

ognl

ognl

3.1.12

**實現

private

t getvaluebymap(string path, mapmap, classclazz, object defaultval) throws

ognlexception

json陣列處理

假設json字串如下:

,,,

,]

}

另外在解析json過程中,盡量使用double對映數字型別(包括整形與浮點型),後續再進行型別轉換即可。

map 函式對映

pattern abba str dog cat cat dog res str.split print list map pattern.index,pattern print list map res.index,res 0,1,1,0 0,1,1,0 可以看出map函式可以根據字串或者列表來列...

VIM鍵盤對映 Map

使用 map命令,可以將鍵盤上的某個按鍵與vim的命令繫結起來。例如使用以下命令,可以通過f5鍵將單詞用花括號括起來 map i其中 i增加字元 最後退至命令狀態。在執行以上命令之後,游標定位在乙個單詞上 例如amount 按下f5鍵,這時字元就會變成的形式。使用下表中不同形式的map命令,可以針對...

VIM鍵盤對映 Map

使用 map命令,可以將鍵盤上的某個按鍵與vim的命令繫結起來。例如使用以下命令,可以通過f5鍵將單詞用花括號括起來 map i其中 i增加字元 最後退至命令狀態。在執行以上命令之後,游標定位在乙個單詞上 例如amount 按下f5鍵,這時字元就會變成的形式。使用下表中不同形式的map命令,可以針對...