Моя проблема не в том, как получить данные из набора результатов, а в наборе результатов, о котором мы не знали
я объясню :
Моя база данных находится на удаленном сервере, соединение через ssh установлено, и все работает отлично но проблема в том, что я использую набор результатов, чтобы получить результат из переменной "queryString", которую я определил, которая получает запрос в виде строки из внешнего интерфейса в качестве запроса, а затем этот запрос будет выполнен с помощью метода, который я определил
и поскольку мы не знаем заранее, из какой таблицы мы собираемся читать данные и сколько столбцов мы собираемся получить, я не знал, как заставить этот метод работать с каждым полученным запросом
ниже мой фрагмент кода:
@Override
public SqlQuery exeuteReceivedQuery(String queryString) throws SQLException {
ConnectToDataBase();
Statement st = (Statement) conn.createStatement();
ResultSet rs = st.executeQuery(queryString);
SqlQuery result = null;
while(rs.next()) {
result = new SqlQuery();
result.getQueryResult();
}
return result;
}
// controller
@GetMapping(value = "/{queryString}",produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<SqlQuery> getResults(@PathVariable("queryString") String queryString) throws SQLException {
SqlQuery cmd = sqlService.exeuteReceivedQuery(queryString);
return new ResponseEntity<>(cmd, HttpStatus.OK);
}
Кто-нибудь из вас знает, как это сделать? Заранее спасибо :)




Вы можете получить доступ к метаданным ResultSet
rs.getMetaData().getColumnCount();
а потом
rs.getMetaData().getColumnName(i);
Вы можете получить из столбцов метаданных, имен, типов данных и т. д. Все, что вам нужно для извлечения результатов.