繁体   English   中英

Scala JSON读/写

[英]Scala JSON Reads/Writes

我开始玩Scala,并在Play框架页面上做一些示例时,发现了无法解决的问题。 我是Scala的新手,所以请您原谅。

为什么这个编译没有错误:

case class Location(lat: Double, long: Double)

implicit val locationReads: Reads[Location] = (
    (JsPath \ "lat").read[Double] and
        (JsPath \ "long").read[Double]
    )(Location.apply _)

但是这个不会编译:

case class Location(lat: Double)

implicit val locationReads: Reads[Location] = (
    (JsPath \ "lat").read[Double]
    )(Location.apply _)

并显示错误:

重载的方法值(可选):[错误](t:Double)play.api.libs.json.Reads [Double] [错误](隐式r:play.api.libs.json.Reads [Double])play.api .libs.json.Reads [Double] [错误]无法应用于(Double => biz.JsonProtocol.Location)[错误](JsPath \\“ lat”)。read [Double]

事实证明,在播放版本<= 2.1中将JSON组合器与单字段案例类一起使用时(已标记为已解决 )。 请参阅问题以寻求可能的解决方案。

看起来你不可能只有biz.JsonProtocol.Location只能有一个纬度...这就是为什么你的经纬度长的样例可以工作,但是纬度不会编译

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM