支持RFC 7386规范 merge-patch+json传输

项目中需要对比两个json字符串的差异,合成差异的json字符串,传输给restful接口进行数据更新操作

 具体使用代码如下:

import javax.json.JsonMergePatch;
import javax.json.JsonUtil;
import javax.json.JsonValue;


public class Test {
    
    public static void main(String[] args) {
       String json1 = "{\"aa\":\"1\"}";
       String json2 = "{\"aa\":\"1\",\"bb\":\"2\"}";
       JsonValue j1 = JsonUtil.toJson(json1);
       JsonValue j2 = JsonUtil.toJson(json2);
       JsonValue diff = JsonMergePatch.diff(j1, j2);
       String patchJson = diff.toString();
       System.out.println(patchJson);

    }

}

 输出结果为:

{"bb":"2"}

使用的jar为javax.json-1.1.0.EDR1.jar,下载地址为http://download.oracle.com/otndocs/jcp/json_p-1_1-edr-spec/index.html

该jar Licence可以用于商业软件,需要使用jdk1.8

猜你喜欢

转载自zhousheng193.iteye.com/blog/2333740
rfc