将sqlrowset中的结果导出到外部文件

时间:2013-03-18 10:12:02

标签: java jdbc

我在java程序中动态生成sql select查询并执行如下:

SqlRowSet result = this.mySimpleJdbcTemplate.
                      getJdbcOperations().queryForRowSet(dynamicQuery);

由于查询是动态的,我不知道结果行中返回的各种列的类型。

我在下面的循环中解析结果以写入外部文件:

if (result != null) {
  while (result.next()) {
    // code to write to external file

  }
}

我应该把这里的结果行写到外部文件中。另外,有没有一种方法可以在写入文件之前分隔数据。例如用'|'

1 个答案:

答案 0 :(得分:1)

我认为你应该使用元数据

result.getMetaData();

这将允许您获取列名,不。列他们的类型等然后你可以迭代这些列并使用java.io在文件中写入数据。*

 SqlRowSetMetaData sqlRowSetMetaData = result.getMetaData();

   String[] columnNames = sqlRowSetMetaData.getColumnNames();

   foreach(String columnName : columnNames){
        result.getXXX(columnName);
   }

以及将数据写入文件的剩余代码