数据库insert语句转json

 public static void main(String[] args) {

        String dbRecord = "INSERT INTO `atp`.`data_dictionary` (`DICTIONARY_ID`, `DICTIONARY_CODE`, `DICTIONARY_NUM`, `NAME`, `NAME_EN`, `NAME_NATIVE`, `REMARK`, `PARENT_CODE`, `SYSTEM_CODE`, `REC_STATUS`, `CREATOR`, `CREATE_TIME`, `MODIFIER`, `MODIFY_TIME`) VALUES ('190', '20b676fe818847af945841c4130c873b', 'DICTIONARY', '数据字典', '', '', NULL, '', NULL, '0', '5', '2014-09-01 22:19:48', '1', '2021-01-08 14:21:46');\n";
        String[] insertArr = dbRecord.split("INSERT");
        List<String> stringList = Arrays.asList(insertArr);
        String jsonStr = dbRecordToJsonStr(stringList);
        System.out.println(jsonStr);
    }


    private static String dbRecordToJsonStr(List<String> dbRecordList) {

        if (null == dbRecordList || dbRecordList.size() == 0) {
            return null;
        }
        StringBuilder resultBuilder = new StringBuilder();
        StringBuilder sb = null;

        for (int i = 0; i < dbRecordList.size(); i++) {

            String dbRecord = dbRecordList.get(i);

            if (!dbRecord.contains("(")) {
                continue;
            }
            
            String fields = dbRecord.substring(dbRecord.indexOf("(") + 1, dbRecord.indexOf(")"));
            String values = dbRecord.substring(dbRecord.lastIndexOf("(") + 1, dbRecord.lastIndexOf(")"));
            String replacedFields = fields.replace("`", "");
            String replacedValues = values.replace("'", "").trim();
            String[] fieldsArr = replacedFields.split(",");
            String[] valuesArr = replacedValues.split(",");
            sb = new StringBuilder();
            if (resultBuilder.length() == 0) {
                sb.append("[");
            }
            for (int j = 0; j < fieldsArr.length; j++) {
                if (0 == j) {
                         sb.append("{").
                            append("\"").
                            append(fieldsArr[j]).
                            append("\"").
                            append(":").
                            append("\"").append(valuesArr[j]).
                            append("\"").
                            append(",");
                } else {
                         sb.append("\"").
                            append(fieldsArr[j]).
                            append("\"").
                            append(":").
                            append("\"").append(valuesArr[j]).
                            append("\"").
                            append(",");
                }
            }
            if (i != dbRecordList.size() - 1) {
                resultBuilder.append(sb.substring(0, sb.lastIndexOf(","))).append("},");
            } else {
                resultBuilder.append(sb.substring(0, sb.lastIndexOf(","))).append("}]");
            }
        }
        return resultBuilder.toString();
    }

  

posted on 2021-01-18 16:10  哈皮的玩偶  阅读(898)  评论(0编辑  收藏  举报