【Groovy】json 字符串反序列化 ( 使用 JsonSlurper 进行 json 字符串反序列化 | 根据 map 集合构造相关类 )
生活随笔
收集整理的這篇文章主要介紹了
【Groovy】json 字符串反序列化 ( 使用 JsonSlurper 进行 json 字符串反序列化 | 根据 map 集合构造相关类 )
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 一、使用 JsonSlurper 進行 json 字符串反序列化
- 二、根據 map 集合構造相關類
- 三、完整代碼示例
一、使用 JsonSlurper 進行 json 字符串反序列化
將如下 json 字符串
{"age":18,"name":"Tom"}進行反序列化 ;
首先 , 創建 JsonSlurper 對象 ,
def jsonSlurper = new JsonSlurper()然后 , 調用該 JsonSlurper 對象的 parse 方法 , 可以對不同類型的 json 數據進行反序列化 ;
可進行反序列化的 json 數據類型如下圖所示 :
這里調用 jsonSlurper 對象的 parseText 方法 , 將 json 字符串進行反序列化操作 ;
// 將字符串進行 json 反序列化操作 , 得到 map 集合 def jsonObject = jsonSlurper.parseText('{"age":18,"name":"Tom"}');打印反序列化結果 ,
// 打印反序列化結果 println jsonObject執行結果如下 :
[age:18, name:Tom]二、根據 map 集合構造相關類
在上面的章節將 json 字符串
{"age":18,"name":"Tom"}進行反序列化 , 得到
[age:18, name:Tom]map 集合 ;
該 map 集合可以直接賦值給相應類對象 , 該類的變量名就是 map 集合的 Key 鍵 ;
// 根據 map 集合的 Key 構造類 class Student {def namedef age }直接將 map 集合賦值給構造的類對象 , 并打印該對象的成員變量值 ;
// 直接將 map 集合賦值給構造的類對象 Student student = jsonObject // 打印類對象的成員變量值 println "${student.name} , ${student.age}"執行結果為 :
Tom , 18三、完整代碼示例
完整代碼示例 :
import groovy.json.JsonSlurper// 將 {"age":18,"name":"Tom"} 字符串進行反序列化 def jsonSlurper = new JsonSlurper()// 將字符串進行 json 反序列化操作 , 得到 map 集合 def jsonObject = jsonSlurper.parseText('{"age":18,"name":"Tom"}'); // 打印反序列化結果 println jsonObject// 根據 map 集合的 Key 構造類 class Student {def namedef age }// 直接將 map 集合賦值給構造的類對象 Student student = jsonObject // 打印類對象的成員變量值 println "${student.name} , ${student.age}"執行結果 :
[age:18, name:Tom] Tom , 18總結
以上是生活随笔為你收集整理的【Groovy】json 字符串反序列化 ( 使用 JsonSlurper 进行 json 字符串反序列化 | 根据 map 集合构造相关类 )的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Groovy】json 序列化 ( 类
- 下一篇: 【Groovy】xml 序列化 ( 使用