public class JacksonUtilTest { public static void main(String\[\] args) { // 你的原始 JSON 字符串 String jsonStr = "{" + " \"clsAttrs\": " + " {" + " \\"productionCatlogLevel\\": {" + " \\"name\\": \\"3333333\\"," + " \\"brandInternationalName\\": \\"2222\\"," + " \\"states\\": {" + " \\"code\\": \\"停用\\"," + " \\"cnName\\": \\"停用\\"" + " }" + " }" + " }" + " " + "}"; // 示例1:解析 JsonNode 并获取 name(你的核心需求) JsonNode jsonNode = JacksonUtil.toJsonNode(jsonStr); String name = JacksonUtil.getStringValue(jsonNode, "clsAttrs0.productionCatlogLevel.name"); System.out.println("获取的name值:" + name); // 输出:3333333 // 示例2:获取嵌套的 states.cnName String cnName = JacksonUtil.getStringValue(jsonNode, "clsAttrs0.productionCatlogLevel.states.cnName"); System.out.println("获取的cnName值:" + cnName); // 输出:停用 // 示例3:对象转 JSON(格式化输出) User user = new User("张三", 25); String userJson = JacksonUtil.toJson(user, true); System.out.println("对象转JSON:\n" + userJson); // 示例4:JSON 转复杂类型(List<Map>) String listJson = "{\\"name\\":\\"李四\\",\\"age\\":30},{\\"name\\":\\"王五\\",\\"age\\":35}"; List<Map<String, Object>> list = JacksonUtil.fromJson(listJson, new TypeReference<List<Map<String, Object>>>() {}); System.out.println("JSON转List:" + list); } // 测试用实体类 static class User { private String name; private Integer age; public User(String name, Integer age) { this.name = name; this.age = age; } // 省略 getter/setter(Jackson 序列化需要) public String getName() { return name; } public void setName(String name) { this.name = name; } public Integer getAge() { return age; } public void setAge(Integer age) { this.age = age; } } }
相关推荐
java资料站1 小时前
二、Spring AI Alibaba · ChatModel北冥you鱼2 小时前
Go 语言空接口(interface{})使用场景与最佳实践夏虫不可与之言冰4 小时前
Windows WSL2 (Ubuntu) 搭建 ESP‑IDF 6.1 开发环境全过程演示打工仔折腾 AI7 小时前
FaceFusion本地换脸实战:Windows整合包、模型选择与遮罩调参记录小蜗牛狂飙记10 小时前
Windows 双击 Jar 包无反应,不用写 bat 脚本!Jarfix 一键修复(以 Struts2 扫描工具为例)坐看风云变幻10 小时前
Betaflight 开发环境搭建保姆级教程(Ubuntu / Windows+WSL / Docker 三方案 + 官方网址大全)IT技术分享社区11 小时前
在 Windows 上跑未改动的 Linux 程序:微软 LiteBox v0.1 把这件事变简单了kakakahahahaha11 小时前
Win10/Win11 Windows Hello指纹不可用处理:WbioSrvc、传感器驱动与登录策略小黄人软件11 小时前
粘贴助手C++版 支持 Windows 7 / 10 / 11 不会出现缺少api-ms-win-core-path-11-1-0.dllVex2une20 小时前
Windows 性能监视器发展史:从 PerfMon 计数器到 XPerf 深度诊断