使用JsonPath解析复杂JSON

发布时间:2026/7/5 15:28:15
使用JsonPath解析复杂JSON 1、引入依赖dependency groupIdcom.jayway.jsonpath/groupId artifactIdjson-path/artifactId /dependency2、使用String method JsonPath.read(shippingJson, $[0].Package.Method); Integer weight JsonPath.read(shippingJson, $[0].Package.Weight.Value); Integer length JsonPath.read(shippingDetails, $[0].Package.Dimensions.Length);为防止字段不存在解析报错开始解析前增加下面的配置Configuration conf Configuration.defaultConfiguration() .addOptions(Option.DEFAULT_PATH_LEAF_TO_NULL);如果有多个Package包裹可以这样直接取全部ListInteger lengths JsonPath.read(json, $[*].Package.Dimensions.Length);附JSON数据ShippingDetails: [{Package: {Method: USP,Weight: {Value: 10,Unit: OZ},Dimensions: {Length: 2,Width: 2,Depth: 2,Unit: IN},IdenticalPackageCount: 1,Type: {PackageType: 0},Reference: [x20],InsuranceValue: 0,InsuranceFee: 0,Postage: 0,TrackingInfo: {TrackingNumber: ,CarrierName: }}}]