001import gudusoft.gsqlparser.util.json.JSON; 002 003import java.io.IOException; 004import java.nio.file.Files; 005import java.nio.file.Paths; 006import java.util.HashMap; 007import java.util.Map; 008 009 010public class readDagJson { 011 public static void main(String[] args) { 012 String jsonFilePath = "c:\\baidudisk\\works\\tech_support\\dag\\20240417 ParserErrorSummaryFile.json"; 013 014 try { 015 String jsonContent = new String(Files.readAllBytes(Paths.get(jsonFilePath))); 016 // JSONObject jsonObject = new JSONObject(jsonContent); 017 Map<String, String> sqlQueries = extractSqlQueries(jsonContent); 018 019 // Print the extracted SQL queries 020 for (Map.Entry<String, String> entry : sqlQueries.entrySet()) { 021 System.out.println("\n\n-- Key: " + entry.getKey()); 022 System.out.println("\n\n-- SQL Query: \n\n" + entry.getValue()); 023 System.out.println(";"); 024 } 025 } catch (IOException e) { 026 e.printStackTrace(); 027 } 028 } 029 030 private static Map<String, String> extractSqlQueries(String jsonString) { 031 Map<String, String> sqlQueries = new HashMap<>(); 032 Map<String, Object> jsonObject = (Map<String, Object>)JSON.parseObject(jsonString); 033 034 for (String key : jsonObject.keySet()) { 035 Map<String, Object> innerObject = (Map<String, Object>)jsonObject.get(key); 036 Map<String, Object> mapObject = (Map<String, Object>)innerObject.get("map"); 037 038 for (String queryKey : mapObject.keySet()) { 039 String sqlQuery = queryKey; 040 String errorMessage = (String)mapObject.get(queryKey); 041 042 sqlQueries.put(key, sqlQuery); 043 } 044 } 045 046 return sqlQueries; 047 } 048}