将MultiValueMap转成json
时间: 2023-07-31 19:13:24 浏览: 380
将MultiValueMap转成json可以使用Jackson库。
首先,我们需要引入jackson-databind依赖。如果你使用的是Maven,可以在pom.xml文件中添加以下依赖:
```xml
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>${jackson.version}</version>
</dependency>
```
其中,`${jackson.version}`需要替换为你使用的jackson版本。
接下来,我们可以使用ObjectMapper类将MultiValueMap转成json。例如:
```java
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.springframework.util.MultiValueMap;
public class MultiValueMapToJson {
public static void main(String[] args) throws JsonProcessingException {
MultiValueMap<String, String> map = new LinkedMultiValueMap<>();
map.add("key1", "value1");
map.add("key2", "value2");
map.add("key2", "value3");
ObjectMapper objectMapper = new ObjectMapper();
String json = objectMapper.writeValueAsString(map);
System.out.println(json);
}
}
```
上述代码中,我们创建了一个MultiValueMap对象,并向其中添加了多个键值对。然后,我们创建了一个ObjectMapper对象,并调用writeValueAsString()方法将MultiValueMap转成json字符串。最后,我们将json字符串打印出来。
输出结果为:
```
{
"key1" : [ "value1" ],
"key2" : [ "value2", "value3" ]
}
```
可以看到,MultiValueMap中有重复的key时,对应的value会以数组的形式表示。
阅读全文