Итак, у меня есть форма в моем jsp-файле, и когда я нажимаю кнопку, я хочу, чтобы она выполняла запрос sql и превращала результат в файл csv, а затем загружала. Я делаю это через сервлет, проблема, с которой я сталкиваюсь, заключается в том, что в загружаемом файле csv вместо моего запроса я получаю «com.opencsv.CSVWriter@771aa22».
Вот о собаке идет речь
protected void doGet (HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String sql QueryConstant.CFOUSERQUERY;
Connection conn =null;
Statement stmt = null;
ResultSet rs = null;
String csvResult="";
try{
ConnectionManager connMan= GFOServer.GetGoldInt.ConnectionManager();
conn connMan.allocateConnection();
stmt. conn.createStatement();
rs=stmt.executeQuery(sql);
CSVWriter writer new CSVWriter(new FileWriter("CFOUserQueryReport.csv"));
writer.writeall (rs, true);
csvResult= writer.toString();
writer.close();
connMan.closeStatement (stmt);
connMan.closeResultSet (rs);
connMan.deallocateConnection(conn);
response.setContentType("text/csv");
response.setHeader("Content-disposition", "attachment: filename CFOUserQueryReport.csv");
response.setHeader("Cache-Control", "no-cache");
response.setHeader("Expires", "-1");
response.getOutputStream().write(csvResult.getBytes());
}catch (Exception e){
e.getMessage();
}
}
Подробнее здесь: https://stackoverflow.com/questions/790 ... tputstream