ObjectMapper为数组中的每个字段转换对象

问题描述

我有一个类似这样的Json数据

{
  "product_name":"abc","product_data": {
    "heading": "xyz","description": "Improve your selling","totalTask": 4,"completedTask": 0,"visitingArea": 
    [
          {
        "name": "Plane your pipeline","description": "Turn prospects into","icon": "<PlayArrowIcon />","linkedUrl": "/table/accountstable","taskCompleted": false
      }
    ]
  }
}

我有一个用于Json序列化的case类。用于product_data:Map [String,Any]。

case class ProductDataRequest(
                         product_id:Option[UUID],product_name:Option[String],product_data:Option[Map[String,Any]]
                         )

我正在使用ObjectMapper来检索product_data的Json对象。我的代码在下面

override def storeTableOnBoardingData: ServiceCall[ProductDataRequest,Done] = {
    request =>
      val id = UUID.randomUUID()
      val name = request.product_name
      val data = request.product_data.get
      import com.fasterxml.jackson.databind.ObjectMapper
      import com.fasterxml.jackson.module.scala.DefaultScalaModule
      val mapper = new ObjectMapper()
      mapper.registerModule(DefaultScalaModule)
      val res=mapper.writeValueAsString(data)
      println("product_data===============>  "+res)
  Future(Done)
  }

我的输出看起来像这样...

product_data===============>   {
  "heading" : "5th","description" : "Improve your selling","completedTask" : 0,"visitingArea" : [ {
    "name" : {
      "value" : "Plane your pipeline"
    },"description" : {
      "value" : "Turn prospects into"
    },"icon" : {
      "value" : "<PlayArrowIcon />"
    },"linkedUrl" : {
      "value" : "/table/accountstable"
    },"taskCompleted" : {
      "value" : false,"productArity" : 1
    }
  } ],"totalTask" : 4
}

从输出中很明显,对于visitingArea数组,它正在为每个字段创建对象。 我的问题是如何检索原始的Json而不是给定的输出。 希望我能很好地解释我的问题。 提前致谢。 或者,如果还有其他解决方案,请推荐。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...