Fix issues 792 NullPointerException

This commit is contained in:
SwallowGG
2023-11-11 19:09:46 +08:00
parent 097900a04a
commit 06e779da8c
2 changed files with 39 additions and 31 deletions

View File

@ -230,6 +230,10 @@ public class PostgreSQLMetaData extends DefaultMetaService implements MetaData {
TableIndex tableIndex = map.get(keyName);
if (tableIndex != null) {
List<TableIndexColumn> columnList = tableIndex.getColumnList();
if(columnList == null){
columnList = new ArrayList<>();
tableIndex.setColumnList(columnList);
}
columnList.add(getTableIndexColumn(resultSet));
columnList = columnList.stream().sorted(Comparator.comparing(TableIndexColumn::getOrdinalPosition))
.collect(Collectors.toList());

View File

@ -392,6 +392,7 @@ public class DlTemplateServiceImpl implements DlTemplateService {
}
private List<Header> setColumnInfo(List<Header> headers, String tableName, String schemaName, String databaseName) {
try {
TableQueryParam tableQueryParam = new TableQueryParam();
tableQueryParam.setTableName(MetaNameUtils.getMetaName(tableName));
tableQueryParam.setSchemaName(schemaName);
@ -402,7 +403,6 @@ public class DlTemplateServiceImpl implements DlTemplateService {
return headers;
}
Map<String, TableColumn> columnMap = columns.stream().collect(Collectors.toMap(TableColumn::getName, tableColumn -> tableColumn));
List<TableIndex> tableIndices = tableService.queryIndexes(tableQueryParam);
if (!CollectionUtils.isEmpty(tableIndices)) {
for (TableIndex tableIndex : tableIndices) {
@ -430,6 +430,10 @@ public class DlTemplateServiceImpl implements DlTemplateService {
header.setDecimalDigits(tableColumn.getDecimalDigits());
}
}
}catch (Exception e){
log.error("setColumnInfo error:",e);
}
return headers;
}