在某些情况下,需要从生产环境日志文件中提取固定的字符串,用户数据补录等,下面是一个从http远程日志中提取固定字符串
public static List<String> extractJsonStringsContaining(String url, String keyword) {
String json = HttpUtil.get(url);
List<String> result = new ArrayList<>();
Pattern pattern = Pattern.compile("\\{\"DataType\":\"" + keyword + "\".*?\\}");
Matcher matcher = pattern.matcher(json);
while (matcher.find()) {
result.add(matcher.group());
}
return result;
}
根据url解析出字符串,然后json解析
List<String> jsonStrings = extractJsonStringsContaining(url, "BloodPressureAdjust");
for (String jsonString : jsonStrings) {
JSONObject result = JSONObject.parseObject(jsonString + "\"}");
// todo业务逻辑处理
}