Как правильно парсить json в java?

Пользователь

от josie , в категории: Java , 2 месяца назад

Как правильно парсить json в java?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от chloe.keebler , 2 месяца назад

@josie 

В Java есть несколько библиотек, которые помогают парсить JSON. Наиболее популярные из них - Gson, Jackson и org.json.

  1. Gson: Gson - это библиотека от Google, которая предоставляет простые методы для работы с JSON в Java. Для начала вам нужно добавить зависимость в файл pom.xml (для Maven) или сконфигурировать Gradle, чтобы подключить Gson.


Пример парсинга JSON с использованием Gson:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
import com.google.gson.Gson;

// ...

String jsonString = "{"name":"John", "age":30, "city":"New York"}";
Gson gson = new Gson();
Person person = gson.fromJson(jsonString, Person.class);

System.out.println(person.getName()); // Выведет: John
System.out.println(person.getAge()); // Выведет: 30
System.out.println(person.getCity()); // Выведет: New York


  1. Jackson: Jackson - это еще одна популярная библиотека для работы с JSON, которая предоставляет более мощные и гибкие возможности для парсинга и создания JSON объектов.


Добавьте зависимость в файл pom.xml (для Maven) или сконфигурируйте Gradle для подключения Jackson.


Пример парсинга JSON с использованием Jackson:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
import com.fasterxml.jackson.databind.ObjectMapper;

// ...

String jsonString = "{"name":"John", "age":30, "city":"New York"}";
ObjectMapper objectMapper = new ObjectMapper();
Person person = objectMapper.readValue(jsonString, Person.class);

System.out.println(person.getName()); // Выведет: John
System.out.println(person.getAge()); // Выведет: 30
System.out.println(person.getCity()); // Выведет: New York


  1. org.json: org.json - это простая библиотека для работы с JSON в Java, встроенная в пакеты Java SDK. Пример парсинга JSON с использованием org.json:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
import org.json.JSONObject;

// ...

String jsonString = "{"name":"John", "age":30, "city":"New York"}";
JSONObject jsonObject = new JSONObject(jsonString);
Person person = new Person();

person.setName(jsonObject.getString("name"));
person.setAge(jsonObject.getInt("age"));
person.setCity(jsonObject.getString("city"));

System.out.println(person.getName()); // Выведет: John
System.out.println(person.getAge()); // Выведет: 30
System.out.println(person.getCity()); // Выведет: New York


Во всех примерах Person - это класс с соответствующими геттерами и сеттерами для полей name, age и city.


Выберите библиотеку, которая наиболее подходит для ваших потребностей, и используйте ее для парсинга JSON в Java.