Les meilleures pratiques pour Sérialiser java.temps.LocalDateTime (java 8) js Date à l'aide de GSON

Dans notre récent projet, nous utilisons java 8. J'ai besoin de sérialiser java.temps.LocalDateTime à java script format de Date.

Actuellement ce que j'ai fait a été de définir une coutume sérialiseur pour convertir LocalDateTime d'horodatage.

public class LocalDateTimeSerializer implements JsonSerializer<LocalDateTime> {
    @Override
    public JsonElement serialize(LocalDateTime localDateTime, Type type, JsonSerializationContext jsonSerializationContext) {
        Instant instant = localDateTime.atZone(ZoneId.systemDefault()).toInstant();
        Date date = Date.from(instant);
        return new JsonPrimitive(date.getTime());
    }
}

puis créer Gson objet à l'aide de GsonBuilder avec mon custom LocalDateTimeSerializer

GsonBuilder gsonBuilder = new GsonBuilder();
gsonBuilder.registerTypeAdapter(LocalDateTime.class, new LocalDateTimeSerializer());

Gson gson = gsonBuilder.create();

Puis en Java Script que j'ai créer un objet Date en utilisant cette heure. Ça fonctionne très bien.

J'ai besoin de savoir, là, c'est ok ou est-il une meilleure façon de le faire?

OriginalL'auteur pasanbuddhika | 2014-02-24