如何在 Java 中将 JSONObject 转换为 Map

How to convert JSONObject to Map in Java

我从客户端得到一个 JSONObject,我想在 Java Spring-Boot 中将它转换为 Map。有人知道我的数据结构的好方法吗?

Json 对象:

FilterObject: {
               "firstName":
                 {"filterType":"text","type":"contains","filter":"emma"},...
               }

映射到:

Map<String, ColumnFilter> filterMap;
public class ColumnFilter {
    private String filterType;
    private String type;
    private String filter;
}

您可以使用此代码段:

String columnFilterJson = "{\"firstName\":{\"filterType\":\"text\",\"type\":\"contains\",\"filter\":\"emma\"}}";
ObjectMapper objectMapper = new ObjectMapper();
HashMap<String, ColumnFilter> columnFilterMap = objectMapper.readValue(columnFilterJson, new TypeReference<HashMap<String, ColumnFilter>>() {});

然后考虑到您的 ColumnFilter class 有 toString() 方法,您可以检查结果:

for (Map.Entry<String, ColumnFilter> entry: columnFilterMap.entrySet()) {
    String key = entry.getKey();
    ColumnFilter value = entry.getValue();
    System.out.println(key);
    System.out.println(value);
}