JAVA使用jackson比对两个json串是否一样

发布时间 2023-03-23 09:47:35作者: yvioo

 

  <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>2.10.1</version>
        </dependency>

 

 这种方式忽略顺序 ,顺序不一样 ,内容一样,也会返回true

/**
     * 比较两个json串是否相同
     * @param currJson 当前json
     * @param oldJson 旧的json
     * @return  true 表示一样,false表示不一样,默认返回 false
     */
    public static boolean checkJsonModify(String currJson, String oldJson) {
        try {
            ObjectMapper objectMapper = new ObjectMapper();
            JsonNode jsonNode1 = objectMapper.readTree(currJson);
            JsonNode jsonNode2 = objectMapper.readTree(oldJson);
            boolean equals = jsonNode1.equals(jsonNode2);
            return equals;
        } catch (JsonProcessingException e) {
            e.printStackTrace();
        }
        return false;
    }