我已将Resultset转换为Objects。现在我想迭代finalResult。其实我想把这个finalResult数组写到Excel。任何人都可以建议如何做到这一点。
public Object[][] executeQuery(String query) throws SQLException{
ResultSet rs = getResultSet(query);
ResultSetMetaData rsMetaData = rs.getMetaData();
int columnCount = rsMetaData.getColumnCount();
ArrayList<Object[]> result = new ArrayList<Object[]>();
Object[] header = new Object[columnCount];
for (int i=1; i <= columnCount; ++i){
Object label = rsMetaData.getColumnLabel(i);
header[i-1] = label;
}
while (rs.next()){
Object[] str = new Object[columnCount];
for (int i=1; i <= columnCount; ++i){
Object obj = rs.getObject(i);
str[i-1] = obj;
}
result.add(str);
}
int resultLength = result.size();
Object[][] finalResult = new Object[resultLength][columnCount];
finalResult[0] = header;
for(int i=1;i<resultLength;++i){
Object[] row = result.get(i);
finalResult[i] = row;
}
return finalResult;
}
答案 0 :(得分:-1)
要编写Excel文件,请查看Apache POI。这是指向(优秀!)忙碌程序员指南的链接:https://poi.apache.org/spreadsheet/quick-guide.html
查看有关创建工作簿,创建工作表和创建单元格的主题。
答案 1 :(得分:-1)
将数据导入Excel的最简单,最快捷的方法是将结果写入逗号分隔值文件或CSV。 Excel可以本机加载此格式。每行文本都包含一系列以逗号分隔的字段。此文件不包含公式或格式,但您的数据将存在。您可以选择标题字段。
header1,header2
value1,value2
此文件是纯文本文件,因此不需要库。