Мне нужно создать Json с двумя элементами. Первый элемент - это List, а второй элемент - простая пара ключ-значение. Мой вывод выглядит следующим образом:Создайте Json из объекта scala со списком
"{
"tables":[
{"table": "sn: 2134"},
{"table": "sn: 5676"},
{"table": "sn: 4564"},
],
"paid": 219
}"
В этом примере первый элемент tables
который Список table
. Второй элемент - paid
.
Я попробовал это, используя play.api.libs.json
lib, но застрял при добавлении второго элемента.
Мой код выглядит следующим образом:
case class Input(table:String){
override def toString = s""""table" : "sn: $table""""
}
implicit val userFormat = Json.format[Input]
val inputsSeq = Seq(Input(table1),Input(table2),Input(table3))
val users = Json.obj("tables" -> inputsSeq)
println(users)
Этот код печати JSon как:
"{
"tables":[
{"table": "sn: 2134"},
{"table": "sn: 5676"},
{"table": "sn: 4564"},
]
}
Я не уверен, как добавить второй элемент в этом формате JSON. любое предложение, как решить это.
бы не 'Json.obj ("Таблицы" -> inputsSeq , "платный" -> 219) 'трюк? –
Да .. Спасибо .. что сделал. Ожидает ли Json.obj() карту? – Alok
Я переопределяю tostring() метод класса ввода case, чтобы добавить строку «sn:», когда он преобразуется в Json. Но после этого метода я вижу, что «sn:» не добавляется, когда объект преобразован в Json. Мне что-то здесь не хватает? – Alok