Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将对象列表下载为Excel文件?_Java_Jsp - Fatal编程技术网

Java 如何将对象列表下载为Excel文件?

Java 如何将对象列表下载为Excel文件?,java,jsp,Java,Jsp,我正在使用JSP以表格格式显示网页中的对象列表。该网页包含用于筛选行的筛选选项。显示的行应可供用户下载为excel文件 如何将对象列表转换为excel文件?如果您正在尝试开发web应用程序,那么您只需在model/pojo类(即Contact.java)中编写自己的csv方法即可 public String toCsv() { return id + ","+ firstName + "," + lastName + "," + email + "," + contactNo

我正在使用JSP以表格格式显示网页中的对象列表。该网页包含用于筛选行的筛选选项。显示的行应可供用户下载为excel文件


如何将对象列表转换为excel文件?

如果您正在尝试开发web应用程序,那么您只需在model/pojo类(即Contact.java)中编写自己的csv方法即可

 public String toCsv() {
     return id + ","+ firstName + "," + lastName + "," + email + "," +    contactNo + "," + addedDate + "," + modifiedDate + "," + status + "\r\n";
 }
然后可以调用此方法下载所有csv列表文件

 private void download(HttpServletResponse response) throws IOException{
    response.setHeader("Content-type","text/csv");
    response.setHeader("Content-Disposition","attachment; filename=file.csv");
    response.setHeader("Pragma", "no-cache");
    response.setHeader("Expires"," 0");
    PrintWriter out=response.getWriter();
    // contactDAO.getAll() being the list
    for(Contact c: contactDAO.getAll()){
        out.println(c.toCsv());
    }
}

将链接指向一个servlet。此servlet加载要导出的数据,使用ApachePOI(例如)生成包含此数据的Excel文档,将响应的内容类型头设置为适当的内容类型,然后将生成的字节写入servlet输出流。