public static List<String> dataCovertInsertSql(String data, String tableName){
List<String> sqls = Lists.newArrayList();
dataCovertMap(data).forEach( dataMap -> {
String sql = "insert into " + tableName + " ( " + dataMap.keySet().stream().collect(Collectors.joining(",")) +")"+ " values "
+ " ( " + dataMap.values().stream().collect(Collectors.joining(",")) + ")";
sqls.add(sql);
});
return sqls;
}
public static List<Map<String,String>> dataCovertMap(String data){
//按行提取
String[] runWilds = data.split("\n");
List<String> runDatas = Lists.newArrayList();
for(int index = 0; index < runWilds.length; index++){
if(runWilds[index].indexOf("|") > -1){
runDatas.add(runWilds[index]);
}
}
//构建数据对象
List<Map<String,String>> datas = Lists.newArrayList();
String[] fileKeys = runDatas.get(0).replaceAll(" ","").split("\\|");
for(int dataIndex =1;dataIndex < runDatas.size(); dataIndex++){
String[] fileValues = runDatas.get(dataIndex).split("\\|");
Map<String,String> dataObj = Maps.newLinkedHashMap();
for(int fileValuesIndex = 0; fileValuesIndex < fileValues.length; fileValuesIndex++){
if(fileKeys[fileValuesIndex] != null && fileKeys[fileValuesIndex].length() >0){
dataObj.put(fileKeys[fileValuesIndex], "'"+fileValues[fileValuesIndex]+"'");
}
}
datas.add(dataObj);
}
return datas;
}
linux查询数据转换为sql
最新推荐文章于 2024-05-24 10:01:30 发布