2016-01-07 67 views
-1

在java中,我用jackson和Gson註釋,Play中是否有類似的東西?它迫使我除了我的類來創建這樣的另一個對象:玩框架:如何序列化/反序列化從/到斯卡拉的JSON

implicit val payloadRead : Reads[payload] = (
     (JsPath \ "act").read[String] and 
     (JsPath \ "sk").read[Int] and 
     (JsPath \ "uid").read[String] and 
     (JsPath \ "ft").read[String] and 
     (JsPath \ "lt").read[String] and 
     (JsPath \ "em").read[String] and 
     (JsPath \ "nts").read[String] and 
     (JsPath \ "ugr").read[Int] 
) (payload.apply _) 

回答

3

Play不會提供宏產生上述的你,如:

implicit val payloadRead = Json.reads[payload] 

here的文檔。

也就是說,Play的json支持的一個很好的特性就是顯式的。與傑克遜相比,您可以非常容易地以更靈活的方式組合和重用解析器。對傑克遜來說,你並不真正瞭解自己在做什麼,它正在做很多反思來訪問你的課程,這對你來說是完全不透明的。相反,在Play的json支持中沒有使用反射,因此您可以完全控制。