🌐
Fasterxml
fasterxml.github.io › jackson-databind › javadoc › 2.7 › com › fasterxml › jackson › databind › ObjectMapper.html
ObjectMapper (jackson-databind 2.7.0 API)
public <T> T readValue(JsonParser jp, TypeReference<?> valueTypeRef) throws IOException, JsonParseException, JsonMappingException
🌐
Baeldung
baeldung.com › home › json › jackson › working with tree model nodes in jackson
Working with Tree Model Nodes in Jackson | Baeldung
January 8, 2024 - A node may be converted from a Java object by calling the valueToTree(Object fromValue) method on the ObjectMapper:
🌐
TedBlob
tedblob.com › home › jackson objectmapper
Jackson ObjectMapper - TedBlob - Technical Posts
November 16, 2021 - The Jackson ObjectMapper provides overloaded functions readValue and writeValue for serialization and deserialization process.
🌐
Fasterxml
fasterxml.github.io › jackson-databind › javadoc › 2.8 › com › fasterxml › jackson › databind › ObjectReader.html
ObjectReader (jackson-databind 2.8.0 API)
NOTE: If defined non-null, readValue() methods that take Reader or String input will fail with exception, because format-detection only works on byte-sources. Also, if format can not be detect reliably (as per detector settings), a JsonParseException will be thrown). ... Root-level cached deserializers. Passed by ObjectMapper...
🌐
GitHub
github.com › simdjson › simdjson-java › issues › 35
Any function similar to jackson's objectMapper.readValue? · Issue #35 · simdjson/simdjson-java
December 26, 2023 - When using jackson, one can use JsonFactory jsonFactory = new JsonFactory(); ObjectMapper objectMapper = new ObjectMapper(jsonFactory); objectMapper.readValue(jsonString, TYPE); to transfer json to Object or using writeValueAsString vice...
Author   ZhaiMo15
🌐
Baeldung
baeldung.com › home › json › jackson › intro to the jackson objectmapper
Intro to the Jackson ObjectMapper | Baeldung
December 9, 2025 - String jsonCarArray = "[{ \"color\" : \"Black\", \"type\" : \"BMW\" }, { \"color\" : \"Red\", \"type\" : \"FIAT\" }]"; ObjectMapper objectMapper = new ObjectMapper(); objectMapper.configure(DeserializationFeature.USE_JAVA_ARRAY_FOR_JSON_ARRAY, true); Car[] cars = objectMapper.readValue(jsonCarArray, Car[].class); // print cars
🌐
Adobe Developer
developer.adobe.com › experience-manager › reference-materials › cloud-service › javadoc › com › fasterxml › jackson › databind › ObjectMapper.html
ObjectMapper (The Adobe Experience Manager SDK 2022.11.9850.20221116T162329Z-220900)
Note that although most read and write methods are exposed through this class, some of the functionality is only exposed via ObjectReader and ObjectWriter: specifically, reading/writing of longer sequences of values is only available through ObjectReader.readValues(InputStream) and ObjectWriter.writeValues(OutputStream). Simplest usage is of form: final ObjectMapper mapper = new ObjectMapper(); // can use static singleton, inject: just make sure to reuse!
🌐
Baeldung
baeldung.com › home › json › jackson › spring boot: customize the jackson objectmapper
Spring Boot: Customize the Jackson ObjectMapper | Baeldung
February 29, 2024 - The article discusses Jackson's central ObjectMapper class, basic serialization and deserialization as well as configuring the two processes.
Find elsewhere
🌐
Baeldung
baeldung.com › home › json › jackson › map serialization and deserialization with jackson
Map Serialization and Deserialization with Jackson | Baeldung
January 8, 2024 - String jsonInput = "{\"key\": \"value\"}"; TypeReference<HashMap<String, String>> typeRef = new TypeReference<HashMap<String, String>>() {}; Map<String, String> map = mapper.readValue(jsonInput, typeRef); We use Jackson’s ObjectMapper, as we did for serialization, using readValue() to process the input.
🌐
Java Guides
javaguides.net › 2023 › 10 › java-jackson-objectmapper-readvalue.html
Java Jackson ObjectMapper readValue()
October 26, 2023 - This class is Jackson's central tool for converting between Java objects and JSON. 4. We call the readValue() method on the ObjectMapper instance, passing the JSON string and specifying that we desire it to be deserialized into a User object.
🌐
Javadoc.io
javadoc.io › doc › com.fasterxml.jackson.core › jackson-databind › 2.3.1 › com › fasterxml › jackson › databind › ObjectMapper.html
ObjectMapper - jackson-databind 2.3.1 javadoc
Bookmarks · Latest version of com.fasterxml.jackson.core:jackson-databind · https://javadoc.io/doc/com.fasterxml.jackson.core/jackson-databind · Current version 2.3.1 · https://javadoc.io/doc/com.fasterxml.jackson.core/jackson-databind/2.3.1 · package-list path (used for javadoc generation ...
🌐
Medium
medium.com › javaguides › jackson-objectmapper-the-complete-guide-7d199d288fdf
Jackson ObjectMapper: The Complete Guide | by Ramesh Fadatare | JavaGuides | Medium
February 28, 2025 - Jackson ObjectMapper: The Complete Guide Jackson is a widely used Java library for converting Java objects to/from JSON. 📢 Stay Connected & Keep Learning! 🚀 If you find my content valuable …
🌐
DigitalOcean
digitalocean.com › community › tutorials › jackson-json-java-parser-api-example-tutorial
Jackson JSON Java: Parser API Examples & Tutorial | DigitalOcean
August 3, 2022 - //converting json to Map byte[] mapData = Files.readAllBytes(Paths.get("data.txt")); Map<String,String> myMap = new HashMap<String, String>(); ObjectMapper objectMapper = new ObjectMapper(); myMap = objectMapper.readValue(mapData, HashMap.class); System.out.println("Map is: "+myMap); //another way myMap = objectMapper.readValue(mapData, new TypeReference<HashMap<String,String>>() {}); System.out.println("Map using TypeReference: "+myMap);
🌐
Spring Framework Guru
springframework.guru › home › how to the jackson object mapper with json
How to The Jackson Object Mapper with JSON - Spring Framework Guru
October 22, 2024 - Introduction As a Java developer, a common task you'll encounter is converting between Java objects and JSON. The Jackson library is a powerful and widely used tool for this purpose. Whether you're building RESTful APIs, microservices, or simply handling JSON data in your application, Jackson's ObjectMapper class makes it easy to serialize and deserialize Java
Top answer
1 of 3
2

In your case, I would write a custom JsonDeserializer. Haven't really tested the code, but I think the idea is clear:

    final MyClassDeserializer myClassDeserializer = new MyClassDeserializer();
    final SimpleModule deserializerModule = new SimpleModule();
    deserializerModule.addDeserializer(MyClass.class, myClassDeserializer);

    final ObjectMapper mapper = new ObjectMapper();
    mapper.registerModule(deserializerModule);

And the code for JsonDeserializer:

    public class MyClassDeserializer extends JsonDeserializer<MyClass> {

    @Override
    public MyClass deserialize(final JsonParser jsonParser, final DeserializationContext context)
            throws IOException {
        final JsonNode node = jsonParser.getCodec().readTree(jsonParser);
        final JsonNode sourcesNode = node.get("sources");
        if(node.isArray()) {
            final ArrayNode arrayNode = (ArrayNode) node;
            final Iterable<JsonNode> nodes = arrayNode::elements;
            final Set<Source> set = StreamSupport.stream(nodes.spliterator(), false)
                    .map(mapper)
                    .collect(Collectors.toSet());
            ...
        }

        ...
    }
2 of 3
0

First thing: Your JSON is invalid. There is a comma after the second object in the sources array. This has to be deleted.

Second: I think you didn't choose the right type for your result. What your JSON represents is a map which maps from string to an array of objects. So the type should be something like Map<String, Props[]> (Since you didn't provide the name of your class, I called it Props.

With these considerations you can construct a MapType by using ObjectMappers getTypeFactory() method and deserialize the value using the constructed type like shown below.

ObjectMapper mapper = new ObjectMapper();
TypeFactory typeFactory = mapper.getTypeFactory();
MapType mapType = typeFactory.constructMapType(HashMap.class, String.class, Props[].class);
Map<String, Props[]> map = mapper.readValue(s, mapType);
🌐
Baeldung
baeldung.com › home › json › jackson › jackson – unmarshall to collection/array
Jackson - Unmarshall to Collection/Array | Baeldung
April 26, 2024 - Or we can use the overloaded readValue method that accepts a JavaType: @Test public void givenJsonArray_whenDeserializingAsListWithJavaTypeHelp_thenCorrect() throws JsonParseException, JsonMappingException, IOException { ObjectMapper mapper = new ObjectMapper(); List<MyDto> listOfDtos = Lists.newArrayList( new MyDto("a", 1, true), new MyDto("bc", 3, false)); String jsonArray = mapper.writeValueAsString(listOfDtos); CollectionType javaType = mapper.getTypeFactory() .constructCollectionType(List.class, MyDto.class); List<MyDto> asList = mapper.readValue(jsonArray, javaType); assertThat(asList.get(0), instanceOf(MyDto.class)); }
🌐
Medium
medium.com › @salvipriya97 › objectmapper-and-its-methods-examples-in-java-4a4cab75cb6b
ObjectMapper and its methods examples in Java | by Priya Salvi | Medium
June 25, 2024 - import com.fasterxml.jackson.databind.ObjectMapper; public class Main { public static void main(String[] args) { String json = "{\"name\":\"John\", \"age\":30}"; ObjectMapper objectMapper = new ObjectMapper(); try { Person person = objectMapper.readValue(json, Person.class); System.out.println(person.getName()); // Output: John } catch (Exception e) { e.printStackTrace(); } } }
🌐
Northcoder
northcoder.com › post › jackson-object-mapper-which-way-is
Jackson's ObjectMapper and TypeReference | northCoder
January 15, 2021 - Some notes on Jackson’s ObjectMapper, when using it without any custom POJO classes, to deserialize an arbitrary piece of JSON to a Java Map.
🌐
Mkyong
mkyong.com › home › java › how to parse json string with jackson
How to parse JSON string with Jackson - Mkyong.com
April 23, 2024 - package com.mkyong.json.jackson; import com.fasterxml.jackson.databind.ObjectMapper; import com.mkyong.json.model.Staff; import java.io.File; import java.io.IOException; public class ConvertJsonToJavaObjectExample { private static final ObjectMapper MAPPER = new ObjectMapper(); public static void main(String[] args) throws IOException { // Convert JSON file to Java object Staff staff = MAPPER.readValue(new File("output.json"), Staff.class); System.out.println(staff); // Convert JSON string to Java object String jsonInString = "{\"name\":\"mkyong\",\"age\":37,\"skills\":[\"java\",\"python\"]}"; Staff staff2 = MAPPER.readValue(jsonInString, Staff.class); // convert compact to pretty-print String staff2PrettyPrint = MAPPER .writerWithDefaultPrettyPrinter() .writeValueAsString(staff2); System.out.println(staff2PrettyPrint); } }