Сообщения

Показаны сообщения с ярлыком "JSON"

Spring Boot: пользовательские сериализаторы и десериализаторы JSON

Изображение
Если вы используете Jackson для сериализации и десериализации данных JSON, вы можете написать свои собственные классы JsonSerializer и JsonDeserializer. Пользовательские сериализаторы обычно регистрируются в Jackson через модуль, но Spring Boot предоставляет альтернативную аннотацию @JsonComponent, которая упрощает непосредственную регистрацию Spring Beans. Вы можете использовать аннотацию @JsonComponent непосредственно в реализациях JsonSerializer, JsonDeserializer или KeyDeserializer. Вы также можете использовать его в классах, которые содержат сериализаторы/десериализаторы в качестве внутренних классов, как показано в следующем примере: import java.io.*; import com.fasterxml.jackson.core.*; import com.fasterxml.jackson.databind.*; import org.springframework.boot.jackson.*; @JsonComponent public class Example { public static class Serializer extends JsonSerializer { // ... } public static class Deserializer extends JsonDeserializer { // ... }...

Как преобразовать Java объект в/из JSON

Изображение
В этом посте будет описано как использовать Jackson 2.x чтобы преобразовать Java объекты в/из JSON. Преобразовать объект в JSON Используйте writeValue(...) для преобразования Java объекта в JSON файл. Используйте writeValueAsString(...) для преобразования Java объекта в JSON строку. import com.fasterxml.jackson.databind.ObjectMapper; import java.io.File; public class Main { public static void main(String[] args){ ObjectMapper mapper = new ObjectMapper(); Animal animal = new Animal(); animal.setName("cat"); try { // Java объект в JSON файл mapper.writeValue(new File("/home/myuser/animals.json"), animal); // Java объект в JSON строку String jsonString = mapper.writeValueAsString(animal); System.out.println(jsonString); } catch (Exception e){ System.out.println(e.getMessage()); } } } Вывод: {"name":"cat...