将数据从JSP页面下载到Excel时如何更改为Excel格式?

我得到在servlet中的结果集,然后转发到JSP页面,在那里我把结果集的所有数据放到表,然后得到输出到Excel文件。 在我的JSP页面的顶部

response.setContentType("application/vnd.ms-excel;"); filename="Report"; filename+=".xls"; response.addHeader("Content-Disposition","attachment; filename="+filename); 

问题是,它是在Excel工作表下载数据,但默认为网页,所以每当我下载的数据,我必须手动更改保存为typesExcel工作簿。 而且当我下载到excel它是警告我该文件不是在XLS格式是否要打开它不。

有没有什么办法可以做,就像我在Excel中下载数据的时候那样会把Excel工作簿保存为types呢?

 Use response.setHeader() instead of response.addHeader() response.setContentType("application/vnd.ms-excel"); response.setHeader("Content-Disposition", "attachment; filename=filename.xls");