scala中json与对象互转

1、pom.xml中引入依赖包

 <dependency>

            <groupId>org.json4s</groupId>

            <artifactId>json4s-native_2.11</artifactId>

            <version>3.2.1</version>

    </dependency>


2、scala代码

object a123 {

  def main(args: Array[String]): Unit = {

    import org.json4s._

    import org.json4s.native.JsonMethods._

    import org.json4s.JsonDSL._

    //对象转化为json

    val list=List(Map("a"->1,"b"->2),Map("a"->1,"b"->2))

    val json: String = compact(render(list))

    println(json)

    //json转化为对象(不带外层字段)

    implicit val formats = DefaultFormats

    case class ClassA(a:Int,b:Int)

    val json2="""[{"a":1,"b":2},{"a":1,"b":2}]"""

    val bb: List[ClassA] = parse(json2).extract[List[ClassA]]

    println(bb.toString)

    //json转对象(带外层字段名)

    case class ClassC(a:Int,b:Int)

    case class ClassB(c:List[ClassC])

    val json3="""{"c":[{"a":1,"b":2},{"a":1,"b":2}]}"""

    val bb1:ClassB=parse(json3).extract[ClassB]

    println(bb)

  }

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。