jsonecho

JSON to Java

Paste a JSON sample and get Java types for it.

Loading the tool...

How to use JSON to Java

  1. Paste a representative JSON sample, ideally one with all the optional fields filled in.
  2. Set the name of the root type, and decide whether you want helper code as well or types only.
  3. Copy the generated Java code into your project.

About JSON to Java

Writing model classes by hand for a big JSON payload is dull, and it is where typos creep in. Paste a sample here and the generator works out the structure: which fields exist, which are objects, which are arrays and what type each value has. The output is plain Java classes with private fields, getters and setters. Untick "Types only" and the output adds a Converter class using the Jackson library.

Nested objects become nested or sibling classes, and arrays become List or arrays of the element type. Everything runs in your browser, so your sample data stays on your machine.

Using the generated code

Add the classes to your project and read the JSON with new ObjectMapper().readValue(json, Root.class) if you kept the Jackson helpers.

Nullable fields use the boxed types such as Integer and Double, so a missing value comes through as null.

Frequently asked questions

What does the generated Java code depend on?

The output is plain Java classes with private fields, getters and setters. Untick "Types only" and the output adds a Converter class using the Jackson library.

How do I parse JSON with the result?

Add the classes to your project and read the JSON with new ObjectMapper().readValue(json, Root.class) if you kept the Jackson helpers.

How are optional and missing fields handled?

Nullable fields use the boxed types such as Integer and Double, so a missing value comes through as null.

Does the generator look at more than one record?

It only knows what is in your sample. If a field is missing from your example, it will not appear in the types, and if a value is null in your example, its type is unknown. Paste an example in which as many fields as possible are filled in, or paste an array with several different records.

Is my JSON sent to a server?

No. The generator is downloaded to your browser the first time you use it, about 1 MB, and everything runs locally.

More in Data to Class

All tools →