json请求报文里含有嵌套对象怎么转map格式
时间: 2023-08-23 09:31:16 浏览: 221
Java 把json对象转成map键值对的方法
如果JSON请求报文中包含嵌套的JSON对象或数组,可以使用Jackson库中的`TypeReference`类来处理。以下是Java代码的示例:
```java
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import java.util.Map;
public class JsonToMap {
public static void main(String[] args) throws Exception {
String json = "{\"name\":\"John\", \"age\":30, \"address\":{\"city\":\"New York\", \"state\":\"NY\"}}";
ObjectMapper objectMapper = new ObjectMapper();
Map<String, Object> map = objectMapper.readValue(json, new TypeReference<Map<String, Object>>() {});
System.out.println(map);
}
}
```
在此示例中,输入的JSON请求报文包含一个嵌套对象 `address`。`ObjectMapper`和`TypeReference`类用法与上一个示例相同。`TypeReference`类指定了要转换的Map类型,其中键是字符串类型,值可以是任何类型。
需要注意的是,如果JSON请求报文中包含数组,则需要使用`TypeReference`类的`List`子类来处理。
阅读全文