27

I'm using GSON to serialise some object graphs to JSON. These objects graphs use the new Java 8 java.time entities (ZonedDateTime, OffsetDateTime, LocalTime etc).

I've found a library for Joda Time serialisers here - is there an equivalent library for the JDK java.time classes?

(This person had no luck with their efforts to use GSON with java.time - and their question remains unanswered).

Community
  • 1
  • 1
Greg Kopff
  • 15,945
  • 12
  • 55
  • 78
  • 8
    I dont't know if this exactly qualifies as Off-Topic since the OP is looking for an answer to a technical problem. It helped me a lot. – boutta Nov 08 '17 at 15:23

1 Answers1

28

There's a Java 8 library here:

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

Here's the Maven details (check central for the latest version):

<dependency>
  <groupId>com.fatboyindustrial.gson-javatime-serialisers</groupId>
  <artifactId>gson-javatime-serialisers</artifactId>
  <version>1.1.1</version>
</dependency>

And here's a quick example of how you drive it:

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);
Greg Kopff
  • 15,945
  • 12
  • 55
  • 78