scala import org.json4s._ import org.json4s.native.JsonMethods._ case class Person(name: String, age: Int) implicit val formats: DefaultFormats = DefaultFormats val person = Person("Alice", 25) val jsonString = write(person) val parsedJson = parse(jsonString) val parsedPerson = parsedJson.extract[Person] scala import org.scalatra._ import org.scalatra.json._ class MyJsonController extends ScalatraServlet with JacksonJsonSupport { protected implicit val jsonFormats: Formats = DefaultFormats post("/person") { val person = parsedBody.extract[Person] person } get("/person/:name") { val name = params("name") Person(name, 25) } } scala class MyJsonController extends ScalatraServlet with JacksonJsonSupport { protected implicit val jsonFormats: Formats = DefaultFormats override def errorHandler: PartialFunction[Throwable, Any] = { case e: IllegalArgumentException => BadRequest("Invalid input: " + e.getMessage) case _ => InternalServerError("An error occurred") } override def exceptionHandler: PartialFunction[Throwable, Any] = { case e: Exception => InternalServerError("An unexpected exception occurred: " + e.getMessage) } }


上一篇:
下一篇:
切换中文