Jackson – 将 JSON 转换为Map并将Map转换为 JSON

Jackson – 将 JSON 转换为Map并将Map转换为 JSON

原文: https://howtodoinjava.com/jackson/jackson-json-to-from-hashmap/

Jackson json 映射示例示例中,我们将学习将 json 转换为映射对象,然后我们将学习将 java 映射转换为 json

1. Jackson 依赖项

在您的应用项目中包括 Jackson2 依赖项。 不要忘记在 maven 站点检查最新依赖项

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.9.6</version>
</dependency>

2. Jackson 将Map转换为 JSON

Map转换为 JSON 的 Java 程序如下。 我在这里使用HashMap

package com.howtodoinjava.jackson2.example;

import java.io.IOException;
import java.util.HashMap;

import com.fasterxml.jackson.core.JsonGenerationException;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.ObjectMapper;

public class MapToJSON 
{
	public static void main(String[] args) 
	{
		HashMap<String, Object> hashmap = new HashMap<String, Object>();

		hashmap.put("id", 11);
		hashmap.put("firstName", "Lokesh");
		hashmap.put("lastName", "Gupta");

		ObjectMapper mapper = new ObjectMapper();
		try 
		{
			//Convert Map to JSON
			String json = mapper.writeValueAsString(hashmap);

			//Print JSON output
			System.out.println(json);
		} 
		catch (JsonGenerationException e) {
			e.printStackTrace();
		} catch (JsonMappingException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
}

程序输出。

{"id":11,"lastName":"Gupta","firstName":"Lokesh"}

3. Jackson 将 JSON 转换为Map

将 JSON 转换为Map的 Java 程序如下。 我在这里使用HashMap

package com.howtodoinjava.jackson2.example;

import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

import com.fasterxml.jackson.core.JsonGenerationException;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.ObjectMapper;

public class JSONToMap
{
	public static void main(String[] args) 
	{
		String json = "{\"id\":1,\"name\":\"Lokesh Gupta\",\"age\":34,\"location\":\"India\"}";

		HashMap<String, Object> map = new HashMap<String, Object>();

		ObjectMapper mapper = new ObjectMapper();
		try 
		{
			//Convert Map to JSON
			map = mapper.readValue(json, new TypeReference<Map<String, Object>>(){});

			//Print JSON output
			System.out.println(map);
		} 
		catch (JsonGenerationException e) {
			e.printStackTrace();
		} catch (JsonMappingException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
}

程序输出:

{id=1, name=Lokesh Gupta, age=34, location=India}

学习愉快!