Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JSONToPOJO

Generate POJO from JSON file

Generating Java files from a json file. The generated java file have implement Serializable Interface and used Lombok, Bean Validation and Fast Json as library.

java -jar JSONToPOJO-1.0-SNAPSHOT-jar-with-dependencies.jar <Json file> <Output folder>

java -jar JSONToPOJO-1.0-SNAPSHOT-jar-with-dependencies.jar inputSchema.json test


Input json template file:

{
    "package_name": "Dummy Data",
    "class_name": "Dummy Data",
    "validation":true,
    "data": {
        "Dummy Data"
    }
}

Sample Input json file

{
    "package_name": "sample",
    "class_name": "SampleClass",
    "validation":true,
    "data": {
        "sample_one": {
            "sample_one_one": 219186,
            "sample_one_two": "Dummy Data",
            "sample_one_three": "Dummy Data"
        },
        "sample_two": "Dummy Data",
        "sample_three": [{
            "sample_three_one": true,
            "sample_three_two": "Dummy Data",
            "sample_three_three": "Dummy Data"
        }]
    }
}

Generated Java Code

@Getter
@Setter
public class SampleClass implements Serializable {

    @Valid
    @NotNull(message = "{sample.one}", groups = FirstValidation.class)
    @JSONField(name = "sample_one")
    private SampleOne sampleOne;

    @NotNull(message = "{sample.two}", groups = FirstValidation.class)
    @NotEmpty(message = "{sample.two}", groups = SecondValidation.class)
    @JSONField(name = "sample_two")
    private String sampleTwo;

    @JSONField(name = "sample_three")
    private List<SampleThree> sampleThree;
}

SampleOne, SampleThree are generated Java Class

Releases

Packages

Used by

Contributors

Languages