|
@@ -0,0 +1,82 @@
|
|
|
|
|
+package com.java110.core.jsonpath;
|
|
|
|
|
+
|
|
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
|
|
+import com.alibaba.fastjson.JSONPath;
|
|
|
|
|
+import org.junit.Test;
|
|
|
|
|
+
|
|
|
|
|
+/**
|
|
|
|
|
+ * Created by wuxw on 2017/9/13.
|
|
|
|
|
+ */
|
|
|
|
|
+public class JsonPathTest {
|
|
|
|
|
+
|
|
|
|
|
+ @Test
|
|
|
|
|
+ public void test() throws Exception {
|
|
|
|
|
+ /* stringRedisTemplate.opsForValue().set("aaa", "111");
|
|
|
|
|
+ Assert.assertEquals("111", stringRedisTemplate.opsForValue().get("aaa"));*/
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ @Test
|
|
|
|
|
+ public void testObj() throws Exception {
|
|
|
|
|
+ String req = "{\n" +
|
|
|
|
|
+ " \"ContractRoot\": {\n" +
|
|
|
|
|
+ " \"SvcCont\": {\n" +
|
|
|
|
|
+ "\t \"CustOrderInfo\": {\n" +
|
|
|
|
|
+ " \"CustId\": \"713005098855\",\n" +
|
|
|
|
|
+ " \"StaffCode\": \"QH1001\",\n" +
|
|
|
|
|
+ " \"ChannelNbr\": \"6301041000000\",\n" +
|
|
|
|
|
+ " \"RegionCode\": \"8630101\",\n" +
|
|
|
|
|
+ " \"OrderId\": \"No Requsted\",\n" +
|
|
|
|
|
+ "\"AttrInfos\":[\n" +
|
|
|
|
|
+ "{\n" +
|
|
|
|
|
+ "\"AttrSpecId\":\"40020005\",\n" +
|
|
|
|
|
+ "\"AttrValue\":\"\",\n" +
|
|
|
|
|
+ "\"AttrType\":\"1\"\n" +
|
|
|
|
|
+ "},\n" +
|
|
|
|
|
+ "{\n" +
|
|
|
|
|
+ "\"AttrSpecId\":\"40020006\",\n" +
|
|
|
|
|
+ "\"AttrValue\":\"\",\n" +
|
|
|
|
|
+ "\"AttrType\":\"1\"\n" +
|
|
|
|
|
+ "},\n" +
|
|
|
|
|
+ "{\n" +
|
|
|
|
|
+ "\"AttrSpecId\":\"40020007\",\n" +
|
|
|
|
|
+ "\"AttrValue\":\"\",\n" +
|
|
|
|
|
+ "\"AttrType\":\"1\"\n" +
|
|
|
|
|
+ "}\n" +
|
|
|
|
|
+ "]\n" +
|
|
|
|
|
+ " },\n" +
|
|
|
|
|
+ " \"ProdOfferInfo\": [\n" +
|
|
|
|
|
+ " {\n" +
|
|
|
|
|
+ " \"ProdOfferNbr\": \"800009346\",\n" +
|
|
|
|
|
+ " \"ProdOfferInstId\": \"-1\",\n" +
|
|
|
|
|
+ " \"Action\": \"ADD\",\n" +
|
|
|
|
|
+ "\"startDt\":\"20170426094245\",\n" +
|
|
|
|
|
+ "\"endDt\":\"30000000000000\",\n" +
|
|
|
|
|
+ " \"AttrInfos\": [{\n" +
|
|
|
|
|
+ "\"AttrSpecId\":\"800009346\",\n" +
|
|
|
|
|
+ "\"AttrValue\":\"800009346\"\n" +
|
|
|
|
|
+ "}],\n" +
|
|
|
|
|
+ " \"OfferProdRelInfo\": [\n" +
|
|
|
|
|
+ " {\n" +
|
|
|
|
|
+ " \"ProdInstId\": \"713030122316\",\n" +
|
|
|
|
|
+ " \"RoleCd\": \"7006\"\n" +
|
|
|
|
|
+ " }\n" +
|
|
|
|
|
+ " ]\n" +
|
|
|
|
|
+ " }\n" +
|
|
|
|
|
+ " ] \n" +
|
|
|
|
|
+ " },\n" +
|
|
|
|
|
+ " \"TcpCont\": {\n" +
|
|
|
|
|
+ " \"AppKey\": \"1001000102\",\n" +
|
|
|
|
|
+ " \"DstSysID\": \"6004050001\",\n" +
|
|
|
|
|
+ " \"Method\": \"order.offer.addprodoffer\",\n" +
|
|
|
|
|
+ " \"Sign\": \"123\",\n" +
|
|
|
|
|
+ " \"Version\": \"1.0\",\n" +
|
|
|
|
|
+ " \"TransactionID\": \"6001000102201703250000014160\",\n" +
|
|
|
|
|
+ " \"ReqTime\": \"20170325115245788\"\n" +
|
|
|
|
|
+ " }\n" +
|
|
|
|
|
+ " }\n" +
|
|
|
|
|
+ "}";
|
|
|
|
|
+
|
|
|
|
|
+ Object obj = JSONPath.eval(JSONObject.parseObject(req),"$.ContractRoot.SvcCont.ProdOfferInfo.AttrInfos[AttrSpecId not in ('40020005','40020006','40020007')]");
|
|
|
|
|
+ System.out.println(obj.toString());
|
|
|
|
|
+ }
|
|
|
|
|
+}
|