0
我正在嘗試使用Scala和Play。我想返回一個Tuple,在這種情況下是一個Tuple3,但可以是任何大小的Tuple。我想將元組序列化爲JSON,但Play似乎不知道如何序列化元組。Play框架序列Tuple3
我只是試圖做類似的東西找到了類型(字符串,字符串,字符串)以下
def getClient(clientId: Int) = Action {
val result = ("I", "AM", "TUPLE")
Ok(Json.toJson(result))
}
沒有JSON序列化非常簡單。嘗試爲此類型實現隱式Writes或Format。
我試過這樣的事情,但它似乎只適用於Tuple2。
val seq = Seq[(String,String)](("attr1"->"val1"),("attr2"->"val2"))
val s = Json.toJson(seq.map(e => Json.obj((e._1 -> e._2))))
Ok(s).as(JSON)
你爲什麼要rendre一個Tuple3爲JSON?你如何讓你的Json看起來像?如果你知道這一點,你可以寫你自己的隱式作家。但是有沒有你不想使用案例課的理由? – Simon
如果我的服務類方法返回元組(客戶端,Seq [Project]),我想將其序列化爲Json以返回客戶端。在Java中,我只是將它們包裝到一個DTO對象中。想知道是否需要在Scala中做同樣的事情。 – greyfox
好的..但是你期待什麼JSON? –