Класс Case в Scala для вложенного JSON - PullRequest
0 голосов
/ 02 июля 2019

SCALA

Мой вложенный JSON появился, как показано ниже.

{"event":"movie","on":"bollywood","reldate":"2019-06-01T18:20:00.560Z","data":{"id":"4965-81dc-4ef","location":{"ratioin":52.48077,"ratioout":13.42499,"reldate":"2019-06-01T18:20:00.560Z"}},"mov_id":"org-id"}

Я написал класс кейс, как указано ниже.

import org.apache.spark.sql.SparkSession
import spray.json.DefaultJsonProtocol
import spray.json._
import spark.implicits._


case class Activity(
    event: string,
    on :string,
    reldate :string,
    data: array[1],
    location: array[2],
    mov: string,
)

но это выкидывает ошибку.

может кто-нибудь, пожалуйста, помогите мне.

1 Ответ

2 голосов
/ 02 июля 2019

Вам нужно создать вложенные классы, которые соответствуют вложенному JSON, что-то вроде этого:

case class Activity(
  event: String,
  on: String,
  reldate: String,
  data: ActivityData,
  mov_id: String,
)

case class ActivityData(
  id: String,
  location: ActivityLocation
)

case class ActivityLocation(
  ratioin: Double,
  ratiouut: Double,
  reldate: String
)
...