Advertisement
mitrakov

Json WithDefaultValues

Aug 19th, 2018
450
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Scala 0.75 KB | None | 0 0
  1. import play.api.libs._
  2. import play.api.libs.json._
  3.  
  4. scala> case class Student(name: String, surname: String, year: Int = 1, age: Int = 18)
  5. defined class Student
  6.  
  7. scala> implicit def jsonFormat: Format[Student] = Json.using[Json.WithDefaultValues].format[Student]
  8. jsonFormat: play.api.libs.json.Format[Student]
  9.  
  10. scala> val json = Json.parse("""{"name": "Tommy", "surname": "Gray"}""")
  11. json: play.api.libs.json.JsValue = {"name":"Tommy","surname":"Gray"}
  12.  
  13. scala> json.asOpt[Student]
  14. res1: Option[Student] = Some(Student(Tommy,Gray,1,18))
  15.  
  16. scala> val student = Student("John", "Brown")
  17. student: Student = Student(John,Brown,1,18)
  18.  
  19. scala> Json.toJson(student)
  20. res2: play.api.libs.json.JsValue = {"name":"John","surname":"Brown","year":1,"age":18}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement