[英]retreive resultset from a custom query in java
我的问题不是如何从结果集中检索数据,而是关于结果集,这与我们过去所知道的不一样
我会解释 :
我的数据库位于远程服务器上,通过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);
您可以从元数据列,名称,数据类型等中获取提取结果所需的全部信息
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.