Spark中Map和Json字符串相互转换 您所在的位置:网站首页 spark解析json字符串 Spark中Map和Json字符串相互转换

Spark中Map和Json字符串相互转换

2023-09-11 16:21| 来源: 网络整理| 查看: 265

1. Map转JsonString

Map转Json的String,首先在pom中添加json4s-native的依赖,一般使用如下方式就可以得到结果

import org.json4s.jackson.JsonMethods._ object Test { def main(args: Array[String]): Unit = { val mapTest = Map("a" -> "1", "b" -> 2) println(compact(render(mapTest))) } } 但有时会提示类型不匹配,这时需要使用Extraction.decompose对类型进行转换,同时需要使用DefaultFormats的默认格式 import org.json4s._ import org.json4s.jackson.JsonMethods._ object Test { def main(args: Array[String]): Unit = { val mapTest = Map("a" -> "1", "b" -> 2) println(compact(render(Extraction.decompose(mapTest)(DefaultFormats)))) } }

2. JsonString转Map

转Map时,首先要保证JsonString的格式是正确的,需要自定义一个regJson方法,代码如下

import scala.util.parsing.json.JSON object Test { def main(args: Array[String]): Unit = { val jsTest = "{\"a\":1, \"b\":\"2\"}" println(regJson(JSON.parseFull(jsTest))) } def regJson(json:Option[Any]):Map[String,Any] = json match { case Some(map:Map[String,Any]) => map } }

 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有