<dependencies>
...
<dependency>
<groupId>com.typesafe.play</groupId>
<artifactId>play-json_2.12</artifactId>
<version>2.9.2</version>
</dependency>
...
</dependencies>
public class User {
public String username;
public String email;
public int age;
}
import play.api.libs.json.Json;
import play.api.libs.json.JsResult;
import play.api.libs.json.JsValue;
String jsonData = "{\"username\":\"john\", \"email\":\"john@example.com\", \"age\":30}";
Json.validate(jsonData, new Reads<User>() {
@Override
public JsResult<User> reads(JsValue json) {
String username = (String)(json \ "username").asOpt[String];
String email = (String)(json \ "email").asOpt[String];
int age = (int)(json \ "age").asOpt[Int];
} else {
User user = new User();
user.username = username;
user.email = email;
user.age = age;
return new JsSuccess(user);
}
}
});