1 source("D:\\apache-jmeter-3.0\\用例\\Test.java"); 2 public static void f(){ 3 String response_data=prev.getResponseDataAsString(); 4 String JsonPath="$.data.groupList[0].dateList"; 5 String result=Test.readjson(response_data,JsonPath);//调用方法时语句要在方法体内,不能直接写语句,否则报错。 6 log.info("---------------"+result+"---------------"); 7 } 8 f();
1 import com.jayway.jsonpath.JsonPath; 2 import com.jayway.jsonpath.Predicate; 3 import net.minidev.json.JSONArray; 4 public class Test { 5 public static String readjson(String json, String jsonPath) { 6 try 7 { 8 Object value = JsonPath.read(json, jsonPath, new Predicate[0]); 9 if (value instanceof Integer) 10 { 11 return value.toString(); 12 }else if (value instanceof String) 13 { 14 return value.toString(); 15 }else if (value instanceof Boolean) 16 { 17 return value.toString(); 18 }else if (value instanceof JSONArray) 19 { 20 JSONArray arr = (JSONArray)value; 21 if(!arr.isEmpty()){return arr.toJSONString();} 22 return ""; 23 }else if (value instanceof LinkedHashMap) 24 { 25 return value.toString(); 26 }else if (value instanceof float) 27 { 28 return value.toString(); 29 }else{ 30 return value.toString(); 31 } 32 } 33 catch(Exception e){ 34 return "pathnotfound"; 35 } 36 } 37 }
1 import com.jayway.jsonpath.JsonPath; 2 import com.jayway.jsonpath.Predicate; 3 import net.minidev.json.JSONArray; 4 public class Test { 5 public static String readjson(String json, String jsonPath) { 6 try 7 { 8 Object value = JsonPath.read(json, jsonPath, new Predicate[0]); 9 if (value instanceof Integer) 10 { 11 return value.toString(); 12 }else if (value instanceof String) 13 { 14 return value.toString(); 15 }else if (value instanceof Boolean) 16 { 17 return value.toString(); 18 }else if (value instanceof JSONArray) 19 { 20 JSONArray arr = (JSONArray)value; 21 if(!arr.isEmpty()){return arr.toJSONString();} 22 return ""; 23 }else if (value instanceof LinkedHashMap) 24 { 25 return value.toString(); 26 }else if (value instanceof float) 27 { 28 return value.toString(); 29 }else{ 30 return value.toString(); 31 } 32 } 33 catch(Exception e){ 34 return "null"; //此处设为"null“字符串,与实际返回null保持一致 35 } 36 } 37 }