如何将带下划线的json映射到case类中的camelCase字段?

import org.json4s.jackson.JsonMethods.parse
import org.json4s.DefaultFormats

object Testing {
  implicit val formats = DefaultFormats.withBigDecimal

  def test = {
    val json = parse("""{"some_field":"a value"}""")
    json.extract[ThingDTO]
  }
}

case class ThingDTO(someField:String)

我得到的错误:

最佳答案

它似乎没有记录(或者至少在我寻找它时我错过了它),但是现在有了一个camelizeCase方法,您可以在解析的Json上使用它。我在源代码中偶然发现了它,并给我处理了一些与我一起使用过的蛇形案例Json一起使用,瞧瞧,得到了驼色的键名。

因此,对于一年后遇到此问题的任何人,将OP的代码更改为以下代码将起作用:

import org.json4s._
import org.json4s.DefaultFormats
import org.json4s.native.JsonMethods._

object Testing {
  implicit val formats = DefaultFormats.withBigDecimal

  def test = {
    val json = parse("""{"some_field":"a value"}""").camelizeKeys
    json.extract[ThingDTO]
  }
}

case class ThingDTO(someField:String)

关于scala - 使用json4s在under_score和camelCase格式之间选择,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25168604/

10-10 04:18