Revize c20f287b
Přidáno uživatelem Michal Linha před téměř 4 roky(ů)
src/main/java/vldc/aswi/database/DatabaseInterface.java | ||
---|---|---|
97 | 97 |
public Map<String, TableColumn> executeQueryAndReturnTableColumns(String sqlQuery) { |
98 | 98 |
return jdbcTemplate.query( |
99 | 99 |
sqlQuery, |
100 |
new ResultSetExtractor<Map<String, TableColumn>>() { |
|
101 |
@Override |
|
102 |
public Map<String, TableColumn> extractData(ResultSet resultSet) throws SQLException, DataAccessException { |
|
103 |
List<TableColumn> tableColumnsList = new ArrayList<>(); |
|
100 |
resultSet -> { |
|
101 |
List<TableColumn> tableColumnsList = new ArrayList<>(); |
|
104 | 102 |
|
105 |
ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
|
|
106 |
int columnCount = resultSetMetaData.getColumnCount();
|
|
103 |
ResultSetMetaData resultSetMetaData = resultSet.getMetaData(); |
|
104 |
int columnCount = resultSetMetaData.getColumnCount(); |
|
107 | 105 |
|
108 |
// The column count starts from 1.
|
|
109 |
for (int i = 1; i <= columnCount; i++ ) {
|
|
110 |
String columnName = resultSetMetaData.getColumnName(i);
|
|
111 |
tableColumnsList.add(new TableColumn(columnName));
|
|
112 |
}
|
|
106 |
// The column count starts from 1. |
|
107 |
for (int i = 1; i <= columnCount; i++ ) { |
|
108 |
String columnName = resultSetMetaData.getColumnName(i); |
|
109 |
tableColumnsList.add(new TableColumn(columnName)); |
|
110 |
} |
|
113 | 111 |
|
114 |
// Add values from row to every column. |
|
115 |
while(resultSet.next()) { |
|
116 |
for (int i = 1; i <= columnCount; i++) { |
|
117 |
tableColumnsList.get(i - 1).addValue(resultSet.getString(i)); |
|
118 |
} |
|
112 |
// Add values from row to every column. |
|
113 |
while(resultSet.next()) { |
|
114 |
for (int i = 1; i <= columnCount; i++) { |
|
115 |
tableColumnsList.get(i - 1).addValue(resultSet.getString(i)); |
|
119 | 116 |
} |
117 |
} |
|
120 | 118 |
|
121 |
Map<String, TableColumn> tableColumnMap = new HashMap<>(); |
|
122 |
|
|
123 |
// Create map, where key is tablecolumn name. |
|
124 |
for (TableColumn column : tableColumnsList) { |
|
125 |
tableColumnMap.put(column.getName(), column); |
|
126 |
} |
|
119 |
Map<String, TableColumn> tableColumnMap = new HashMap<>(); |
|
127 | 120 |
|
128 |
return tableColumnMap; |
|
121 |
// Create map, where key is tablecolumn name. |
|
122 |
for (TableColumn column : tableColumnsList) { |
|
123 |
tableColumnMap.put(column.getName(), column); |
|
129 | 124 |
} |
125 |
|
|
126 |
return tableColumnMap; |
|
130 | 127 |
} |
131 | 128 |
); |
132 | 129 |
} |
Také k dispozici: Unified diff
re #8113 re #7885 all functions implemented, contingency table generation improved; re #8154 value filtering added; no comments