范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

五JSONPath使用(Java)

  1. 开发环境JDK 1.8 SpringBoot 2.1.18 2. 添加依赖     com.jayway.jsonpath     json-path     2.6.0 3. 读取JSONString jsonStr = "{"name":"大润发超市",fruits: [{"name":"苹果"}, {"name":"香蕉"}]}"; JSONObject jsonObject = JSONObject.parseObject(jsonStr); DocumentContext dc = JsonPath.parse(jsonStr); List jsonPaths = JsonHelperUtils.getJsonPath(jsonObject); for(String jsonPath : jsonPaths) {     Object actual = dc.read("$." + jsonPath);     System.out.println("$." + jsonPath + " = " + actual); }
  输出结果如下: 10:02:01.133 [main] DEBUG com.jayway.jsonpath.internal.path.CompiledPath - Evaluating path: $["name"] $.name = 大润发超市 10:02:01.146 [main] DEBUG com.jayway.jsonpath.internal.path.CompiledPath - Evaluating path: $["fruits"][0]["name"] $.fruits[0].name = 苹果 10:02:01.147 [main] DEBUG com.jayway.jsonpath.internal.path.CompiledPath - Evaluating path: $["fruits"][1]["name"] $.fruits[1].name = 香蕉4. 写入JSONString jsonStr = "{"name":"大润发超市",fruits: [{"name":"苹果"}, {"name":"香蕉"}]}"; JSONObject jsonObject = JSONObject.parseObject(jsonStr); DocumentContext dc = JsonPath.parse(jsonStr); dc.set("$.name", "华润苏果超时"); dc.set("$.fruits[1].name", "葡萄");  List jsonPaths = JsonHelperUtils.getJsonPath(jsonObject); for(String jsonPath : jsonPaths) {     Object actual = dc.read("$." + jsonPath);     System.out.println("$." + jsonPath + " = " + actual); }
  输出结果如下: 10:05:50.665 [main] DEBUG com.jayway.jsonpath.internal.path.CompiledPath - Evaluating path: $["name"] 10:05:50.682 [main] DEBUG com.jayway.jsonpath.internal.JsonContext - Set path $["name"] new value 华润苏果超时 10:05:50.684 [main] DEBUG com.jayway.jsonpath.internal.path.CompiledPath - Evaluating path: $["fruits"][1]["name"] 10:05:50.685 [main] DEBUG com.jayway.jsonpath.internal.JsonContext - Set path $["fruits"][1]["name"] new value 葡萄 10:05:50.745 [main] DEBUG com.jayway.jsonpath.internal.path.CompiledPath - Evaluating path: $["name"] $.name = 华润苏果超时 10:05:50.746 [main] DEBUG com.jayway.jsonpath.internal.path.CompiledPath - Evaluating path: $["fruits"][0]["name"] $.fruits[0].name = 苹果 10:05:50.746 [main] DEBUG com.jayway.jsonpath.internal.path.CompiledPath - Evaluating path: $["fruits"][1]["name"] $.fruits[1].name = 葡萄
  注意: 在读取json时,需要通过异常来判断读取的是集合还是对象,参考如下示例: String jsonStr = ""; String expression = ""; try {     //Will throw an java.lang.ClassCastException     List values = JsonPath.parse(jsonStr).read(expression);     for(Object actual : values) {         Object actual = JsonPath.parse(jsonStr).read(expression);     } }catch(ClassCastException e1) {     Object actual = JsonPath.parse(jsonStr).read(expression); }
ampampquot心态对了,你就不会那么累了ampampquot幽窗小记里的一副对联,也许你也看过宠辱不惊,看庭前花开花落去留无意,望天空云卷云舒。每次想到这句话,都会感受到那种平和淡然的心态,一下子把人从纷繁复杂的现实当中超脱出去。其实我们很苹果挤牙膏式的推出新机型,作为消费者的我们还能买账几年?如果你熟悉数码圈,你应该能够看出来,苹果在近几年里没有了创新。如果你不了解数码圈,也许你看到的,就是苹果一成不变的外观和祖传的充电速度。其实,相比现在国内的安卓手机品牌来说,苹果似手机使用越久越卡顿?这几款旗舰都刷新了智能手机使用寿命的上限当我们使用手机时,它的每一次卡顿都是在积累我们换新机的动力,对于手机本身来说,我们使用时间越久,也就代表着它的寿命也越来越短。俗话说,心有余而力不足,即便是它想多服役几年,但是现在5G加持,未来通信服务市场必然第一竞争力日前,中国移动和中国电信已相继公布自家数据,两者有一个共同的特点是移动电话用户数出现大规模暴减情况。其中中国移动数据显示,2月份移动用户净减725。4万户中国电信数据显示,2月份移8K流媒体服务来袭,BTSport和三星进行了8K试播据外媒报道,英国广播公司BTSport和三星在阿森纳与奥林匹亚科斯的比赛期间实验了英国的首个8K直播,不过,BTSport还计划稍后推出8K流媒体服务。仅在阿森纳的阿联酋体育场内受IPTV趋向规范化,广电与电信合作在升级IPTV的增量迅猛,可能已经超出了多年前广电人的预料,没想到几年不到便接近3亿的用户量,而有线数字电视竟然跌破了2亿,并且实际缴费用户可能更低。因此,从监管层面上已经完全不能再忽视微软的Mixer流媒体服务遭遇困境,迫求改变现状日前,StreamElements和Arsenal。gg发布了一份报告,报告中显示,观看时间是流媒体平台的关键基础,目前该业务比去年同期增长了不到2。而大家也知道,在过去虽然微软招字节跳动已在上线流媒体音乐应用Resso,功能与TikTok类似日前,有消息称,字节跳动旗下音乐流媒体应用Resso已经正式在印度和印尼两个地区上线。在过去,字节跳动一直都在悄悄开发这款流媒体音乐应用Resso,并且希望能在Spotily和Ap5G时代,多媒体终端快速演进,PayTV生态活力不减随着2019年5G在中国全面商用,5G的用户量呈现爆炸性增长态势,截至2019年底全球已经有62家运营商进行了商用。移动互联网的蓬勃发展促进了OTT业务的发展,整个OTT市场订阅用2020年流媒体服务报告出,约34的美国家庭订阅流媒体服务据TradeDesk和YouGov的最新调查,约34的美国家庭(74)现在至少有一项订阅流媒体视频服务。如今,随着Netflix和AmazonPrime等服务的订阅量持续增长,又有AmazonFireTV限时特惠,可享受NetflixHBOYoutube等视频众所周知,现在有很多的电视是不支持Netflix或者是YouTube在线视频的,但这对于使用ApoleTV和Chromecast的用户来说,Amazon推出FireTV限时特价优惠
AMDZen4处理器5月24日发布,但老用户可能不太开心期盼已久的Zen4处理器(锐龙7000系列)将于5月24日在台北电脑展正式发布,实际上市时间预计在89月份,相信广大电脑爱好者们肯定已经迫不及待地想升级自己的电脑,尤其是受到显卡危事关你我!微信大动作微信公众平台即将展示用户IP属地4月29日,据微信珊瑚安全公告显示,为维护网络传播秩序,进一步打击仿冒搬运造谣传谣等行为,微信公众平台将显示用户发布内容时的IP属地,境内帐号展示到省(自治区直辖市),境外帐号展示国内首例NFT侵权案交易平台责任判定引关注本报记者郑瑜北京报道元宇宙概念之下,国内资本相继涉足区块链数字作品交易市场,收取燃料费与交易佣金的盈利模式也在一些国内NFT平台上开始流行。转移NFT需要支付燃料费用,并且平台将收全网第一款1字形吹风机品牌介绍杭州乐秀电子科技有限公司为小米生态链企业,直白是杭州乐秀电子科技有限公司旗下自有品牌。直白吹风机是公司拳头产品,是个人护理小家电领域新锐品牌。2021荣获江苏有线。视界互联黄峥好的决定,往往需要付出痛的代价黄峥,这个名字已经沉寂了一年了。2021年3月,黄峥宣布辞任拼多多董事长,表示将更多结合个人终身兴趣,致力于食品科学和生命科学领域的研究,为十年后的拼多多探索高速高质量纵深发展的新荣耀手机夺回中国市场第一,同比增幅超200!华为兄弟好样的文虎龙吟2022年第一季度的中国智能手机市场成绩单新鲜出炉,荣耀手机考了一个不可思议的好成绩,不仅重新夺回第一名殊荣,销量更是同比增幅超过了200!根据Canalys刚刚发布的统计境外势力鬼哭狼嚎,中国网友上演抓鬼大戏,坏人都暴露了导语这两日,中国的各大互联网平台,开始陆续落实IP地址显示的功能。这一功能一上线,有趣的事情就颇多,尤其是那些假装成人民群众的境外势力和假装成人在国外的舔洋公知,直接被人民群众拉出智联招聘CEO郭盛远程办公是企业管理标准化发展的试验场4月28日晚,由智联招聘和北京大学国家发展研究院联合主办的中国远程居家办公发展报告发布会通过线上直播形式举行,双方共同发布了针对远程居家办公的研究成果。此次发布会主题为困势还是趋势多国助力中小企业加快数字化转型全球疫情延宕反复,一些国家的中小企业面临市场萎缩资金不足人才紧缺等多重压力。后疫情时代,以大数据人工智能等数字技术为支撑的新产业新业态将加快发展。一些国家通过多种方式,激发中小企业小米手机和Redmi手机的区别是什么?两者的差距真的很大吗小米和红米是小米公司的两个不同的子品牌,前者更专注于提供高端和技术先进的产品,而后者则针对精打细算的消费者。而米粉们或许还不知道一个非常普遍的问题是小米手机和红米手机之间有什么区别华为Nova10Pro价格疑似曝光,携手鸿蒙OS3。0回归,或将在7月发布大家好,我是三月。在华为的整个手机体系中,mate系列和P系列应该是最受认可的,其中华为的P系列主打影像旗舰,而mate系列则是全方位的顶级旗舰,几乎不会有短板,但响应的这两款旗舰