मेरे पास स्कैला क्लास से JSON ऑब्जेक्ट को प्रस्तुत करने के संबंध में एक साधारण प्रश्न है। मुझे deserializer (पढ़ने, लिखने) लागू करने के लिए क्यों है।प्ले के साथ जेएसओएन प्रस्तुत करना! और स्कैला
मैं निम्नलिखित मामले वर्ग है:
case class User(firstname:String, lastname:String, age:Int)
और मेरे नियंत्रक में:
val milo:User = new User("Sam","Fisher",23);
Json.toJson(milo);
मैं संकलन त्रुटि मिलती है: नहीं Json deserializer प्रकार models.User के लिए मिल गया। इस प्रकार के लिए एक अंतर्निहित लेखन या प्रारूप को लागू करने का प्रयास करें।
मेरी पिछली परियोजना में मुझे कक्षा में एक पाठक, लेखक वस्तु को काम करने के लिए इसे लागू करना पड़ा और मुझे यह बहुत परेशान लगता है।
object UserWebsite {
implicit object UserWebsiteReads extends Format[UserWebsite] {
def reads(json: JsValue) = UserWebsite(
(json \ "email").as[String],
(json \ "url").as[String],
(json \ "imageurl").as[String])
def writes(ts: UserWebsite) = JsObject(Seq(
"email" -> JsString(ts.email),
"url" -> JsString(ts.url),
"imageurl" -> JsString(ts.imageurl)))
}
}