用Gson,将json串直接转成map

在scala项目开发的工程中,可能会经常有需要解析json串的应用场景。在这里介绍一种使用Gson()将json直接转成map的方法。

 

首先,需要添加Gson的依赖

<!-- Gson依赖 -->
<dependency>
	<groupId>com.google.code.gson</groupId>
	<artifactId>gson</artifactId>
	<version>2.8.5</version>
</dependency>

 

代码演示

def test():Unit= {
    val requestStr: String = "[{\"name\":\"Johnson\",\"age\":18,\"hobby\":\"basketball\"},{\"name\":\"Jack\",\"age\":20,\"hobby\":\"football\"},{\"name\":\"Johnson\",\"age\":22,\"hobby\":\"swimming\"}]";
    val jsonArray = JSON.parseArray(requestStr)
    println(jsonArray)
    println(jsonArray.getClass)
    for (i <- 0 until jsonArray.size()) {
      val jsonString = jsonArray.getJSONObject(i).toJSONString
      val gson = new Gson()
      var map = new util.HashMap[String, String]()
      map = gson.fromJson(jsonString, map.getClass)
      println("name:" + map.get("name"))
      println("age:" + map.get("age"))
      println("hobby:" + map.get("hobby"))
      println("************************")
    }
}

 

结果展示

name:Johnson
age:18.0
hobby:basketball
************************
name:Jack
age:20.0
hobby:football
************************
name:Johnson
age:22.0
hobby:swimming
************************

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值