java中使用jsonpath解析json串

编程知识 行业动态 更新时间:2024-06-13 00:22:04

在解析前端传入json的时候,需要解析json串,这里使用jsonpath进行解析

首先需要导入相关的maven依赖

<dependency>
    <groupId>com.jayway.jsonpath</groupId>
    <artifactId>json-path</artifactId>
</dependency>

进行配置文件的编写

public class JsonPathConfig {
    @Bean
    public com.jayway.jsonpath.Configuration jsonPathConfiguration() {
        com.jayway.jsonpath.Configuration.setDefaults(new com.jayway.jsonpath.Configuration.Defaults() {

            private final JsonProvider jsonProvider = new JacksonJsonProvider();
            private final MappingProvider mappingProvider = new JacksonMappingProvider();

            @Override
            public JsonProvider jsonProvider() {
                return jsonProvider;
            }

            @Override
            public MappingProvider mappingProvider() {
                return mappingProvider;
            }

            @Override
            public Set<Option> options() {
                return EnumSet.noneOf(Option.class);
            }
        });
        return com.jayway.jsonpath.Configuration.defaultConfiguration();
    }

}

下面写一下我使用的解析方法

 public List<Obj> getJson(String url, String postParam) {
        JSONObject jsonParam = JSONObject.parseObject(postParam);
        RestTemplate template = new RestTemplate();
        ResponseEntity<String> response = null;
        try {
            response = template.postForEntity(url, jsonParam, String.class);
        } catch (RestClientException e) {
        //抛出自定义异常
            throw new ApiException(ErrorCode);
        }
        JSONObject getMsg = JSON.parseObject(response.getBody());
        ReadContext context = JsonPath.parse(getMsg);
        //在这里,“$”中为需要获取到json的路径
        List<Obj> result = context.read("$.data", new TypeRef<List<Obj>>() {});
        return result;
    }

测试jsonpath:jsonpath

更多推荐

java中使用jsonpath解析json串

本文发布于:2023-04-01 16:16:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/55c21f31b814495dfed2a46c5fe89666.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:java   jsonpath   json

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!