JSON у Java клас
Перетворіть зразок JSON у Java класи з автоматичним виведенням вкладених типів та узагальнених списків.
JSON у Java клас
Вставте зразок JSON і цей інструмент генерує Java класи, необхідні для його представлення, виводячи типи полів, типи вкладених об'єктів та типи елементів узагальнених списків прямо з наданих значень. Він призначений для backend розробників, які отримують відповідь API або файл конфігурації та потребують типізованої моделі для десеріалізації без необхідності вручну писати кожне поле.
Виберіть спосіб анотування полів: відсутність, Jackson's @JsonProperty або Gson's @SerializedName, кожен з яких зберігає вихідний ключ JSON таким чином, щоб серіалізація все ще відповідала після перейменування поля на camelCase. Вимкніть геттери та сетери для простого класу з відкритими полями або замініть їх Lombok's @Data або Java record, де компоненти займають місце полів та методів доступу. Типи-обгортки (Integer, Boolean, Double) можна скрізь використовувати замість примітивів; інструмент завжди використовує обгортку де значення дійсно опціональне, оскільки примітив ніколи не може містити null. Оголошення пакета додається при необхідності, а вкладені об'єкти відображаються як статичні вкладені класи в одному файлі або як окремі класи верхнього рівня.
Коли одна й та ж структура з'являється більше одного разу — повторювані об'єкти в масиві або два сусідні поля з ідентичною структурою — інструмент повторно використовує один згенерований клас замість його дублювання. Поля спостережувані з різними структурами по всьому масиву об'єднуються в один клас, поля відсутні в деяких елементах позначаються як опціональні. Числа залишаються як int де вони підходять у 32-бітний діапазон і розширюються до long або double за необхідності; ключ JSON який не може бути ідентифікатором Java, наприклад емодзі, повертається до безпечного згенерованого імені.
Усе працює локально у вашому браузері — зразок JSON ніколи не завантажується і не передається на сервер. Скопіюйте згенеровані класи у свій проект, завантажте їх як файл .txt або відправте вихід назад на вхід для запуску іншого інструменту над ним.