Home > Java > javaTutorial > How to Convert JSON Strings to HashMaps in Java?

How to Convert JSON Strings to HashMaps in Java?

DDD
Release: 2024-12-04 10:02:12
Original
784 people have browsed it

How to Convert JSON Strings to HashMaps in Java?

Converting JSON Strings to HashMaps with Java

Introduction
Working with JSON data often involves the need to parse the data into a HashMap for easy manipulation. In Java, one can leverage the org.json library for this purpose.

Recursive Method
This method iterates through the JSON object, converts arrays to lists, and nested objects to HashMaps, before adding them to the final HashMap.

public static Map<String, Object> jsonToMap(JSONObject json) throws JSONException {
    Map<String, Object> retMap = new HashMap<String, Object>();
    if(json != JSONObject.NULL) {
        retMap = toMap(json);
    }
    return retMap;
}
...
Copy after login

Alternate Method: Jackson Library
Alternatively, one can use the Jackson library for a more straightforward approach:

import com.fasterxml.jackson.databind.ObjectMapper;
...
Map<String, Object> mapping = new ObjectMapper().readValue(jsonStr, HashMap.class);
...
Copy after login

Example Usage

Given the sample JSON string:

{
"name" : "abc",
"email id " : ["email1@domain.com","email2@domain.com","email3@domain.com"]
}
Copy after login

To convert it to a HashMap using the recursive method:

Map<String, Object> myMap = jsonToMap(new JSONObject(jsonStr));
...
Copy after login

Using the Jackson library:

Map<String, Object> myMap = new ObjectMapper().readValue(jsonStr, HashMap.class);
...
Copy after login

The resulting HashMap will contain the parsed JSON data, allowing for easy access and manipulation.

The above is the detailed content of How to Convert JSON Strings to HashMaps in Java?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template