欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

java-json操作

程序员文章站 2022-05-31 16:26:38
...

好记性不如烂笔头,多总结,多思考,才能避免看了一遍又一遍,忘了一次又一次。

仅以自勉

 

今天在实现项目中需求的过程中,总结了点工具,做个备忘:

目标:取json指定属性下的值。

思路:解析xml的时候有xpath,做爬虫的时候有css选择器,那么json也应该有类似xpath之类的处理方式。

过程:百度(还用不到谷歌就找到答案了)

结果:阿里的fastJson,从1.2开始支持jsonPath

 

完美解决。

 

类似json的行转列,也可以通过这种方式处理。

如:

{data:

    [

        {"type":"1","name":"张三"},

        {"type":"2","name":"李四"}

    ]

}

通过表达式:$.data[?($.type=2)].name,就可以提取到name的值张三,结合输入的type值,做到行转列的效果。

 

 需要注意的是fastjson在序列化和反序列化的时候,默认是开启ASM的。

使用下面的代码就能关闭ASM:

 

SerializeConfig.getGlobalInstance().setAsmEnable(false); // 序列化的时候关闭ASM

ParserConfig.getGlobalInstance().setAsmEnable(false); // 反序列化的时候关闭ASM