java - 如何仅将 Json 字符串的相关部分转换为 Set?

标签 java jackson

我有一些像这样的 json:

{
    "meta": {
        "request": {
            "main_name_only": false,
            "format": "json",
            "name": "all",
            "start_date": "2019-04-01",
            "end_date": "2019-04-30",
            "limit": null,
            "country": "world",
            "show_verified": true
        },
        "status": "Success",
        "last_updated": "2019-04-30"
    },
    "top_names": [
        {
            "rank": 1,
            "name": "Jack"
        },
        {
            "rank": 2,
            "name": "John"
        },
        {
            "rank": 3,
            "name": "Mary"
        }
   ]
}

我只需要将此 json 的一部分转换为 Set<String>List<String>名字。我不需要排名和元信息。我只需要转换name来自top_names 。 我怎样才能使用 Java 来做到这一点和Jackson

最佳答案

我用下面的方法解决了我的问题:

ObjectMapper mapper = new ObjectMapper();
List<String> names = mapper.readTree(json).findValuesAsText("name");

感谢大家对我的帮助!

关于java - 如何仅将 Json 字符串的相关部分转换为 Set?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56167030/

相关文章:

Java 8 过滤映射<String,List<Employee>>

java - 如何使用 Java 查找默认文件打开器?

java - GAE 部署 Java8/Java7 错误

java - 为什么我这里不能成功调用.put方法?

java - JSON 变量替换占位符

java - 创建 JsonProcessingException

java - 反序列化包含无效类标识符的 JSON

java - Spring Controller 的 Aop 注释不起作用

java - 如何使用 Jackson JSON 将 JSON 字符串转换为 Map<String, String>

java - Jackson、继承、域对象和泛型