如何使用Gson序列化和反序列化Java 8的java.time类型?

我正在使用GSON将一些对象图序列化为JSON。 这些对象图使用新的Java 8 java.time实体( ZonedDateTimeOffsetDateTimeOffsetDateTime等)。

我在这里找到了一个Joda Time序列化器库 – 是否有一个JDK java.time类的等效库?

( 这个人在使用带有java.time没有运气 – 他们的问题仍然没有答案)。

这里有一个Java 8库:

https://github.com/gkopff/gson-javatime-serialisers

这是Maven的详细信息(查看最新版本的中心):

  com.fatboyindustrial.gson-javatime-serialisers gson-javatime-serialisers 1.1.1  

这是一个如何驱动它的快速示例:

 Gson gson = Converters.registerOffsetDateTime(new GsonBuilder()).create(); SomeContainerObject original = new SomeContainerObject(OffsetDateTime.now()); String json = gson.toJson(original); SomeContainerObject reconstituted = gson.fromJson(json, SomeContainerObject.class);