com.alibaba.fastjson
Это высокопроизводительный продукт, разработанный Alibaba Group.、Полнофункциональная Java JSON-библиотека. Он предоставляет богатый API для простой сериализации объектов Java в строки JSON или десериализации строк JSON в объекты Java. fastjson широко используется в различных Java Веб-приложения, мобильные приложения и сценарии обработки больших данных стабильны, эффективны и просты в использовании. В повседневной разработке обычно необходимо преобразовать данные ответа интерфейса в формат json и вернуть их во внешний интерфейс. Поэтому fastjson широко используется и часто используется. Поэтому в этой статье в основном представлены часто используемые API-интерфейсы fastjson.
Сначала вам нужно ввести зависимости в pom-файл,То есть использование fastjson в проектах Maven.,Просто добавьте его в проектpom.xml
Добавьте в файл следующие зависимости:
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.37</version>
</dependency>
fastjson предоставляет простой и удобный в использовании API, который поддерживает сериализацию объектов Java в строки JSON и десериализацию строк JSON в объекты Java. Эта функция позволяет разработчикам легко конвертировать объекты Java и данные JSON для удовлетворения потребностей взаимодействия с внешними и внутренними данными. Основные часто используемые API:
String com.alibaba.fastjson.JSON.toJSONString(Object object)
Пример:
User user = new Пользователь("Чжан Сан",25);
Строка userJsonStr = JSON.toJSONString(пользователь);
System.out.println(userJsonStr); // вывод: {"возраст": 25,"name":"Чжан Сан"}
Уведомление:Хотя в примере используетсяJSONObject.toJSONString(user)
,Но рекомендуется использоватьJSON.toJSONString(object)
,потому чтоJSON
класс этоfastjson
Вступительный класс в библиотеку,Предоставляет больше возможностей и лучшую совместимость.
<T> T com.alibaba.fastjson.JSON.parseObject(String text, Class<T> clazz)
Пример:
String userJsonStr = "{\"возраст\":25,\"имя\":\"Чжан Сан\"}";
User user1 = JSON.parseObject(userJsonStr, User.class);
System.out.println(user1); // Вывод: User{name='Чжан Сан', age=25}
Вышеупомянутые два метода на самом деле часто используются при разработке: преобразование объектов в строки json и преобразование строк json в объекты.
com.alibaba.fastjson.JSONObject com.alibaba.fastjson.JSON.parseObject(String text)
метод используется дляJSONСтрока десериализуется вJSONObject
объект。
Пример:
String userJsonStr = "{\"возраст\":25,\"имя\":\"Чжан Сан\"}";
JSONObject userJsonObj = JSON.parseObject(userJsonStr);
System.out.println(userJsonObj); // Вывод: {"возраст":25,"имя":"Чжан Сан"}
Сначала определите строку JSON,а затем использоватьJSON.parseObject()
метод десериализации его какJSONObject
объект。выходизJSONObject
объект СодержитJSONВсе пары ключ-значение в строке。
com.alibaba.fastjson.JSONArray com.alibaba.fastjson.JSONObject.getJSONArray(String key)
Метод, используемый для полученияJSONObject
объект Уточняйте в Массив JSON, соответствующий ключу.
String userJsonStr = "{\"хобби\":[\"баскетбол\",\"футбол\"]}";
JSONObject userJsonObj = JSON.parseObject(userJsonStr);
JSONArray hobbies = userJsonObj.getJSONArray("hobbies");
System.out.println(hobbies); // Выход: ["баскетбол","футбол"]
Сначала определяется строка JSON, содержащая массив JSON.,а затем использоватьJSON.parseObject()
метод десериализации его какJSONObject
объект。затем,использоватьgetJSONArray()
метод полученhobbies
Массив JSON, соответствующий ключу.
com.alibaba.fastjson.JSONObject com.alibaba.fastjson.JSONArray.getJSONObject(int index)
Метод, используемый для полученияJSONArray
объект Уточняйте в下标изJSONобъект。Этот метод принимаетint
Введите нижний индекс в качестве аргумента,и возвращаетJSONObject
объект。Пример:
String userJsonStr = "{\"хобби\":[{\"имя\":\"баскетбол\", \"уровень\":\"любитель\"},{\"имя\":\"футбол\",\" уровень \":\"Профессиональный\"}]}";
JSONObject userJsonObj = JSON.parseObject(userJsonStr);
JSONArray hobbies = userJsonObj.getJSONArray("hobbies");
JSONObject basketball = hobbies.getJSONObject(0);
System.out.println(basketball); // Вывод: {"level":"любитель","name":"баскетбол"}
В этом примере,Определяет массив JSON, содержащий объекты JSON.,а затем использоватьJSON.parseObject()
метод десериализации его какJSONObject
объект。использоватьgetJSONArray()
метод полученhobbies
keyСоответствующийJSONмножество,наконециспользоватьgetJSONObject()
метод полученмножествопервый вJSONобъект。
String com.alibaba.fastjson.JSONObject.getString(String key)
Метод, используемый для полученияJSONObject
объект Уточняйте в Строковое значение, соответствующее ключу.Пример:
String userJsonStr = "{\"имя\":\"Чжан Сан\", \"возраст\":\"25\"}";
JSONObject userJsonObj = JSON.parseObject(userJsonStr);
String name = userJsonObj.getString("name");
System.out.println(name); // Результат: Чжан Сан
Приведенный выше код определяет строку JSON, содержащую строковое значение.,а затем использоватьJSON.parseObject()
метод десериализации его какJSONObject
объект。а затем использоватьgetString()
метод полученname
Строковое значение, соответствующее ключу.
int com.alibaba.fastjson.JSONObject.getIntValue(String key)
Метод, используемый для полученияJSONObject
объект Уточняйте в Целочисленное значение, соответствующее ключу.Этот метод принимаетString
типkeyкак параметр,и возвращаетint
типценить。Пример кода выглядит следующим образом:
String userJsonStr = "{\"имя\":\"Чжан Сан\", \"возраст\":25}";
JSONObject userJsonObj = JSON.parseObject(userJsonStr);
int age = userJsonObj.getIntValue("age");
System.out.println(age); // Выход: 25
В коде случая сначала определяется строка JSON, содержащая целочисленное значение.,а затем использоватьJSON.parseObject()
метод десериализации его какJSONObject
объект。а затем использоватьgetIntValue()
метод полученage
Целочисленное значение, соответствующее ключу.
boolean com.alibaba.fastjson.JSONObject.getBooleanValue(String key)
Метод, используемый для полученияJSONObject
объект Уточняйте вkeyСоответствующий布尔ценить。Следующий код:
String userJsonStr = "{\"имя\":\"Чжан Сан\",\"isStudent\":false}";
JSONObject userJsonObj = JSON.parseObject(userJsonStr);
boolean isStudent = userJsonObj.getBooleanValue("isStudent");
System.out.println(isStudent); // Вывод: ложь
На самом деле это редко используется в повседневной жизни, поэтому каждый может узнать об этом.
Вышеуказанное представляет собой введение и общий API fastjson. На самом деле, нет необходимости форсировать запоминание. Ежедневная разработка может стать идеальной.