如何使用java从数据库下载数据作为csv?

时间:2010-07-02 17:39:10

标签: java

我需要使用数据库从数据库下载csv文件。

我有jdbc连接并执行查询,从数据库中获取数据。这些值使用java类下载为csv格式。

Java class:
String filename="Cases.csv";
//here database connection.


ResultSet rst= stmt.executeQuery(qry);
    System.out.println("1"+rst);
    if(rst.next())
    {

    Content=rst.getString("USER_details");

    }
    //ServletOutputStream out = null;
    //out.println(Content);
    System.out.println("1"+Content);
    byte requestBytes[] = Content.getBytes();
    ByteArrayInputStream bis = new ByteArrayInputStream(requestBytes);
    response.reset();
    response.setContentType("application/text");
    response.setHeader("Content-disposition","attachment; filename=" +filename);
    byte[] buf = new byte[1024];
    int len;
    while ((len = bis.read(buf)) > 0){
    response.getOutputStream().write(buf, 0, len);
    }
    bis.close();
    response.getOutputStream().flush(); 
    }
    catch(Exception e){
    e.printStackTrace();
    }

如何将所有值从数据库获取为csv格式?

1 个答案:

答案 0 :(得分:3)

OpenCSV支持将ResultSet导出为CSV:

CSVWriter writer = ...;
ResultSet rs = ...;
writer.writeAll(rs, true);