Preskoči na sadržaj
100% lokalno

JSON u Java klasu

Pretvorite JSON primjer u Java klase, s automatski zaključenim ugniježđenim tipovima i generičkim listama.

Unos
Rezultat

JSON u Java klasu

Zalijepite JSON primjer i ovaj alat generirat će Java klase potrebne za njegov prikaz, zaključujući tipove polja, tipove ugniježđenih objekata i tipove elemenata generičke liste direktno iz vrijednosti koje ste dali. Izgrađen je za backend razvojne programere koji primaju odgovor API-ja ili konfiguracijsku datoteku i trebaju tip model za deserijalizaciju bez pisanja svakog polja ručno.

Odaberite kako su polja anotirana: nema, Jackson's @JsonProperty, ili Gson's @SerializedName, svaki noseći originalni JSON ključ tako da serijalizacija i dalje odgovara nakon što je polje preimenovano u camelCase. Isključite gettere i settere za običnu klasu s javnim poljima, ili ih zamijenite s Lombok's @Data ili Java zapisom, gdje komponente zamjenjuju polja i pristupnike. Tipovi omotača (Integer, Boolean, Double) mogu se forsirati svugdje umjesto primitiva; alat uvijek koristi omotač gdje je vrijednost doista opcionalna, jer primitiv nikada ne može biti null. Deklaracija paketa se dodaje kada je dana, a ugniježđeni objekti se prikazuju kao statičke ugniježđene klase u jednoj datoteci ili kao odvojene klase na najvišoj razini.

Kada se isti oblik pojavljuje više puta — ponavljajući objekti u nizu, ili dva susjedna polja s identičnom strukturom — alat ponovno koristi jednu generiranu klasu umjesto njene duplikacije. Polja promatrana s različitim oblicima u nizu se spajaju u jednu klasu, s poljima odsutnom iz nekih elemenata označenim kao opcionalna. Brojevi ostaju kao int gdje se uklapaju u raspon od 32-bitni i proširi se na long ili double po potrebi; JSON ključ koji ne može biti Java identifikator, kao što je emoji, pada u sigurno generirano ime.

Svega se izvršava lokalno u vašem pregledniku — nigdje se JSON primjer ne učitava niti se prenosi na server. Kopirajte generirane klase u svoj projekt, preuzimite ih kao .txt datoteku, ili pošaljite izlaz natrag u unos kako biste pokrenuli drugi alat na njega.

FAQ

Upravlja li se ugniježđenim objektima i nizovima?
Da. Ugniježđeni objekti postaju vlastita klasa (ugniježđena ili odvojena, ovisno o mogućnosti rasporeda klase) i nizovi postaju generički java.util.List zaključenog tipa elementa.
Što se događa s poljem koje nedostaje u nekim primjerima objekata?
Označeno je kao opcionalno i, ako je primitiv, nadograđeno na njegov tip omotača (Integer, Boolean, Double) tako da polje može biti legitimno null.
Mogu li koristiti Lombok ili Java zapise umjesto ručnih gettere i settere?
Da. Uključite Lombok @Data za klasu anotiranu s @Data i privatnim poljima, ili Koristi Java zapis za generiranje zapisa s poljima kao komponentama — oboje zamjenjuje ručno napisane pristupnike.
Kako se biraju imena polja kada ključ JSON nije valjani Java identifikator?
Ključ se pretvara u camelCase; ključ koji proizvodi prazno ili ime koje kolidira sa ključnom riječju pada u sigurno generirano ime poput polja ili ključne riječi sa zaobilaznom crticom.
Je li moj JSON učitan negdje?
Nema. Generiranje klase se izvršava potpuno u vašem pregledniku — vaš JSON primjer nikada se ne šalje na server.