pom依赖

     <dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>2.9.9</version></dependency><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-annotations</artifactId><version>2.9.9</version></dependency><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-core</artifactId><version>2.9.9</version></dependency>

测试string

        String json = "{\"name\":\"小明\",\"school\":{\"name\":\"第一小学\",\"tel\":\"010-123456\",\"address\":\"北京海淀区\"},\"hobbies\":[\"足球\",\"篮球\",\"吉他\"]}";String arrayJson = "[{\"no\":10,\"name\":\"Jack\"},{\"no\":11,\"name\":\"Tom\"},{\"no\":12,\"name\":\"Harry\"},{\"no\":13,\"name\":\"Li\"}]";

1.Json字符串转JsonNode

ObjectMapper objectMapper = new ObjectMapper();//对象
JsonNode jsonNode = objectMapper.readTree(json);//数组
Iterator<JsonNode> elements = jsonNode2.elements();
while (elements.hasNext()) {JsonNode node = elements.next();System.out.println(node.toString());
}

2.JsonNode转Json字符串

String s = objectMapper.writeValueAsString(lisa);

3.JsonNode转java对象

Student student = objectMapper.treeToValue(jsonNode1,Student.class);

4.JsonNode根据key查找值

//只能取第一层key,key不存在返回nullJsonNode name = jsonNode.get("name");  //只能取第一层key,key不存在返回MissingNode
JsonNode name = jsonNode.path("name");  //全部key,取第一个,key不存在返回MissingNode,空字符串
JsonNode name = jsonNode.findPath("name"); //全部key,取第一个,key不存在返回null,空指针
JsonNode name = jsonNode.findValue("name");  //查找全部的key
List<JsonNode> name = jsonNode.findValues("name");//已经key路径查找
JsonNode name = jsonNode.at("/school/name");

5.JsonNode类型

//获取类型
JsonNodeType nodeType = jsonNode.getNodeType();//判断是否是数组
boolean array = jsonNode.isArray();
//判断是否是对象
boolean object = jsonNode.isObject();
//判断是否是值
boolean valueNode = jsonNode.isValueNode();

JsonNode常用方法相关推荐

  1. JsonNode、JsonObject常用方法

    最近项目中要用到json,闲暇时间,对json进行下总结. 一.json.jsonNode.jsonObject的区别 1.json是一个字符串. 2.jsonNode是一个对象,jsonNode中都 ...

  2. JsonNode与JsonObject基本使用和常用方法

    1. JsonNode Json字符串 String json = "{\"username\":\"PDD\",\"company\&qu ...

  3. JsonNode、JsonObject基本使用和常用方法(转)

    原文链接:https://blog.csdn.net/mst1010/article/details/78589059 最近项目中要用json,闲暇时间,对json进行下总结. 1.JsonNode ...

  4. 30 个 php 操作 redis 常用方法代码例子

    这篇文章主要介绍了 30 个 php 操作 redis 常用方法代码例子 , 本文其实不止 30 个方法 , 可以操作 string 类 型. list 类型和 set 类型的数据 , 需要的朋友可以 ...

  5. SearchRequestBuilder常用方法说明

    SearchRequestBuilder常用方法说明 (1) setIndices(String... indices):上文中描述过,参数可为一个或多个字符串,表示要进行检索的index:(2) s ...

  6. 3-RACSignal 常用方法

    RACSingal的常用方法 一 基本使用 1map // 0 创建信号提供者// RACSubject,既能发送信号,又能订阅信号// 多用于代理,相当于OC里的delegate或者回调blockR ...

  7. AJAX 一些常用方法

    AJAX 一些常用方法 abort() 停止当前请求 getAllResponseHeaders() 返回包含HTTP请求的所有响应头信息,其中响应头包括Content-Length,Date,URI ...

  8. OC基础第四讲--字符串、数组、字典、集合的常用方法

    OC基础第四讲--字符串.数组.字典.集合的常用方法 字符串.数组.字典.集合有可变和不可变之分.以字符串为例,不可变字符串本身值不能改变,必须要用相应类型来接收返回值:而可变字符串调用相应地方法后, ...

  9. vue——props的两种常用方法

    vue--props的两种常用方法 1.实现父-->子的通信 举例如下: 父组件 parent.vue <children :channel="object1"> ...

最新文章

  1. java集合框架容器 java框架层级 继承图结构 集合框架的抽象类 集合框架主要实现类...
  2. opencv基础知识-videowriter
  3. 计算机视觉--优秀开源方案集锦
  4. css编写的技巧效果总结
  5. Pytorch 自定义激活函数前向与反向传播 Tanh
  6. 每天10分钟用python学数据分析_用Python做数据分析,Numpy,Pandas,matp
  7. udp接受_UDP协议-看这篇就够了
  8. 12096 - The SetStack Computer
  9. linux下iscsi
  10. python-open函数操作实例
  11. 随机生成一注双色球号码
  12. MAC上VMware fusion 12安装vmware tools灰色解决办法
  13. CleanMyMac X4.12.2免费版MAC电脑系统磁盘优化工具
  14. linux戒游戏下载,灵魂宝戒游戏下载-灵魂宝戒安卓版v0.9.50-Linux公社
  15. awk中RS,ORS,FS,OFS区别与联系
  16. idea 注释格式化之后回到同一行
  17. tewa-800g请输入正确的管理员账户_tp-link路由器如何设置管理员身份绑定 路由器设置管理员身份绑定方法【介绍】...
  18. 【js html】对于img图片的引用填充,src可以给什么值?
  19. 股市小白必看!能获取股票数据的编程语言:Python带你看懂股市线
  20. 音频转换通项目案例简单过程分享

热门文章

  1. jsonp解决跨域问题(简单易懂)
  2. 数组的TopK的三种解决方法---Java
  3. 2023 4月份 华为硬件开发岗位实习生机考回忆
  4. CAD dxflib 直线双向箭头标注
  5. 推荐学java——Maven初识
  6. vue 搜索文本让搜索的字体高亮显示
  7. JMeter 控制并发数
  8. 【py】5个支持python的2D、3D游戏开发库
  9. 什么是CPC,CPL,CPM,CPL,CPS,PPC,广告?
  10. vue/js实现文件流下载,文件下载进度监听