当前位置: 首页 > news >正文

江苏建站东莞门户网站建设方案

江苏建站,东莞门户网站建设方案,免费下载一个app,小米品牌vi设计背景 最近使用json实现复杂业务配置, 因为功能需要解析读取json的中节点数据。如果使用循环或者stream处理#xff0c;可以实现#xff0c;但是都过于麻烦。在想能否使用更简单json读取方式#xff0c;正好发现fastjson支持该功能#xff0c;本文做一个记录 案例说明 示…背景 最近使用json实现复杂业务配置, 因为功能需要解析读取json的中节点数据。如果使用循环或者stream处理可以实现但是都过于麻烦。在想能否使用更简单json读取方式正好发现fastjson支持该功能本文做一个记录 案例说明 示例1使用fastjson实现,依赖如下 !--alibaba.json和依赖包--dependencygroupIdcom.alibaba/groupIdartifactIdfastjson/artifactIdversion1.2.79/version/dependency为了对比写法便捷性示例2也提供jackson的部分实现方式。 示例1. fastjson实现json指定节点按条件过滤提取数据 使用 JSONPath.eval 来筛选 JSON 数据中符合特定条件的元素。以下是使用 eval 方法提取 author 等于 “Nigel Rees” 的那条记录的示例代码 public class JSONPathExample {public static void main(String[] args) {String json {\n \store\: {\n \book\: [\n { \category\: \reference\, \author\: \Nigel Rees\, \title\: \Sayings of the Century\, \price\: 8.95 },\n { \category\: \fiction\, \author\: \Evelyn Waugh\, \title\: \Sword of Honour\, \price\: 12.99 },\n { \category\: \fiction\, \author\: \Herman Melville\, \title\: \Moby Dick\, \price\: 8.99 },\n { \category\: \fiction\, \author\: \J. R. R. Tolkien\, \title\: \The Lord of the Rings\, \price\: 22.99 }\n ],\n \bicycle\: {\n \color\: \red\,\n \price\: 19.95\n }\n }\n };JSONObject jsonObject JSON.parseObject(json);JSONArray result (JSONArray) JSONPath.eval(jsonObject, $.store.book[?(.author Nigel Rees)]);for (Object book : result) {System.out.println(book);}} } 运行结果如下符合预期。而且代码非常简洁。 {author:Nigel Rees,price:8.95,category:reference,title:Sayings of the Century}示例2. jackson实现json指定节点按条件过滤提取数据 jackson 不支持直接使用 JSONPath 表达式但可以通过结合 Jackson 和 Java 流操作实现类似的功能。以下是一个使用 Jackson 过滤 JSON 数据中 type 为 ‘AggregateRoot’ 的节点的示例 public class JacksonExample {public static void main(String[] args) throws IOException {String json {\n \classDiagram\: {\n \nodes\: [\n { \id\: \1\, \type\: \AggregateRoot\, \name\: \Node1\ },\n { \id\: \2\, \type\: \Entity\, \name\: \Node2\ },\n { \id\: \3\, \type\: \AggregateRoot\, \name\: \Node3\ },\n { \id\: \4\, \type\: \ValueObject\, \name\: \Node4\ }\n ]\n }\n };ObjectMapper objectMapper new ObjectMapper();JsonNode rootNode objectMapper.readTree(json);JsonNode nodesNode rootNode.path(classDiagram).path(nodes);ListMapString, Object nodes new ArrayList();if (nodesNode.isArray()) {nodes StreamSupport.stream(nodesNode.spliterator(), false).filter(node - AggregateRoot.equals(node.path(type).asText())).map(node - objectMapper.convertValue(node, Map.class)).collect(Collectors.toList());}for (MapString, Object node : nodes) {System.out.println(node);}} }总结 fastjson的JSONPath.eval方法对于快速解析json数据十分便利后续再记录更多的使用技巧。
http://www.w-s-a.com/news/686353/

相关文章:

  • 成都的教育品牌网站建设做网站不给提供ftp
  • 建站行业市场人力管理系统
  • qq钓鱼网站在线生成器google关键词搜索工具
  • 化妆网站模板移动网站建设模板
  • 欢迎访问语文建设杂志网站网站蓝色配色
  • 最新网站发布重庆城乡建设部网站首页
  • 网站建设费用高鄂尔多斯seo
  • dw做网站怎么发布网站无后台可以上框架
  • 网络公司如何建网站网站的建设需要多少钱
  • 代刷网站推广快速泉州网页定制
  • 网站优秀网站地址做宣传册的公司
  • 苏州高端网站建设咨询wordpress云图插件
  • 河北省建设厅网站重新安装优秀中文网页设计
  • 如何在腾讯云做网站开源站群cms
  • 公司网站建设的意义网易做网站
  • 网络营销案例分析与实践搜外seo
  • 手机建网站挣钱吗wordpress面包屑
  • 淘客做网站怎么备案网站开发工具的是什么
  • 提供大良网站建设郑州网站建设网站开发
  • 邢台做wap网站价格wordpress评论滑动
  • 绝味鸭脖网站建设规划书江苏建设人才网 官网
  • 网站源码授权破解centos wordpress 整站
  • 建设一个私人视频网站wordpress js
  • 手机企业网站制作流程3d建模自学
  • 网站优化方案和实施wordpress的归档
  • 建设事业单位网站多少钱集艾设计公司官网
  • 网站建设与管理方案书图片的制作方法
  • 中文建网站美发网站模板带手机版
  • 免费聊天不充值软件windows优化大师下载安装
  • 网站优化的关键词自己怎么做外贸网站空间