java工具:《字符串转List》

简介: java工具:《字符串转List》

image.png

@[toc]

一、介绍

这段代码展示了如何使用 Jackson 库将 JSON 数组反序列化为 Java 对象列表的典型流程。下面用一段话介绍它的作用与核心步骤:

这段代码的作用是将一个包含嵌套数组的 JSON 字符串解析为 User 对象的集合。它首先创建 Jackson 的核心类 ObjectMapper,通过 readTree() 方法将 JSON 字符串解析为一棵 JsonNode 树形结构,便于按路径访问节点。接着调用 rootNode.get("data") 获取到代表数组的 dataArray 节点。随后遍历这个数组中的每个元素节点,利用 objectMapper.treeToValue(node, User.class) 方法将每个 JSON 对象节点转换为 User 的 Java 实例,并逐个添加到 userList 集合中。最后遍历输出每个 User 对象(依赖 User 类正确实现 toString() 方法)。

这种先解析为树节点、再逐项转换的方式,适用于 JSON 结构复杂、需要先定位到特定子节点再进行反序列化的场景,相比直接使用 readValue(json, new TypeReference>(){}) 的写法更加灵活可控,但代码稍显冗长。实际开发中可根据需求选择更简洁的 TypeReference 方式或这种分步解析方式。

如果需要,我也可以补充说明这种方式与 TypeReference 方式的适用场景对比,或者介绍 User 类应如何定义字段与注解以匹配 JSON 结构。

二、代码

字符串长这样

{
   
    "returnCode": "2000",
    "data": [
        {
   
            "activityId": "07e71d599d734d3f844c5014a991462b",
            "entId": null,
            "entName": "苏州芯慧和创科技发展有限公司"
        }
    ]
}

转换代码
```java
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.JsonNode;
import java.util.List;
import java.util.ArrayList;

public class Main {
public static void main(String[] args) {
String json = "{\"returnCode\":\"2000\",\"data\":[{\"activityId\":\"07e71d599d734d3f844c5014a991462b\",\"entId\":null,\"entName\":\"苏州芯慧和创科技发展有限公司\"}]}";

    try {
        ObjectMapper objectMapper = new ObjectMapper();
        JsonNode rootNode = objectMapper.readTree(json);
        JsonNode dataArray = rootNode.get("data");

        List<User> userList = new ArrayList<>();
        for (JsonNode node : dataArray) {
            User user = objectMapper.treeToValue(node, User.class);
            userList.add(user);
        }

        // 打印输出
        for (User user : userList) {
            System.out.println(user);
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
}

}
```
image.png

重要信息

image.png
image.png

目录
相关文章
|
10天前
|
人工智能 JSON 机器人
让龙虾成为你的“公众号分身” | 阿里云服务器玩Openclaw
本文带你零成本玩转OpenClaw:学生认证白嫖6个月阿里云服务器,手把手配置飞书机器人、接入免费/高性价比AI模型(NVIDIA/通义),并打造微信公众号“全自动分身”——实时抓热榜、AI选题拆解、一键发布草稿,5分钟完成热点→文章全流程!
11177 103
让龙虾成为你的“公众号分身” | 阿里云服务器玩Openclaw
|
9天前
|
人工智能 IDE API
2026年国内 Codex 安装教程和使用教程:GPT-5.4 完整指南
Codex已进化为AI编程智能体,不仅能补全代码,更能理解项目、自动重构、执行任务。本文详解国内安装、GPT-5.4接入、cc-switch中转配置及实战开发流程,助你从零掌握“描述需求→AI实现”的新一代工程范式。(239字)
5767 136
|
8天前
|
人工智能 并行计算 Linux
本地私有化AI助手搭建指南:Ollama+Qwen3.5-27B+OpenClaw阿里云/本地部署流程
本文提供的全流程方案,从Ollama安装、Qwen3.5-27B部署,到OpenClaw全平台安装与模型对接,再到RTX 4090专属优化,覆盖了搭建过程的每一个关键环节,所有代码命令可直接复制执行。使用过程中,建议优先使用本地模型保障隐私,按需切换云端模型补充功能,同时注重显卡温度与显存占用监控,确保系统稳定运行。
1985 6
|
6天前
|
人工智能 自然语言处理 供应链
【最新】阿里云ClawHub Skill扫描:3万个AI Agent技能中的安全度量
阿里云扫描3万+AI Skill,发现AI检测引擎可识别80%+威胁,远高于传统引擎。
1404 3
|
7天前
|
人工智能 Linux API
离线AI部署终极手册:OpenClaw+Ollama本地模型匹配、全环境搭建与问题一站式解决
在本地私有化部署AI智能体,已成为隐私敏感、低成本、稳定运行的主流方案。OpenClaw作为轻量化可扩展Agent框架,搭配Ollama本地大模型运行工具,可实现完全离线、无API依赖、无流量费用的个人数字助理。但很多用户在实践中面临三大难题:**不知道自己硬件能跑什么模型、显存/内存频繁爆仓、Skills功能因模型不支持工具调用而失效**。
3313 7