Vous devriez mettre en œuvre un désérialiseur client. Voir the Awita's answer.
Cependant, juste pour l'enregistrement, il y a an official datatype Jackson module qui reconnaît Java 8 Date & Types de données API temps. Il représente Period
en tant que chaîne au format ISO-8601, et non en tant qu'objet. Mais si vous êtes prêt à changer le format, vous pouvez envisager d'utiliser ce module.
Voici un exemple:
public class JacksonPeriod {
public static void main(String[] args) throws JsonProcessingException {
final ObjectMapper objectMapper = new ObjectMapper();
objectMapper.registerModule(new JavaTimeModule());
final Period period = Period.of(1, 2, 3);
final String json = objectMapper.writeValueAsString(period);
System.out.println(json);
}
}
Sortie:
"P1Y2M3D"
Personne ne sait ce qui est dans votre classe 'Period', mais je pense que ce que vous cherchez est d'analyser et extraire les valeurs cette représentation JSON. Ai-je raison? –
@ ɐuıɥɔɐɯ désolé, je devrais mentionner que c'est la classe Period standard de la bibliothèque de temps de Java 8. Et oui, fondamentalement, je dois prendre chaque numéro et faire quelque chose comme 'Period.of (année, mois, jour)' – Richard
Cela pourrait aider: http://stackoverflow.com/questions/2591098/how-to-parse-json -in-java – Ceelos