Javascript 杰克塞尔不工作

Javascript 杰克塞尔不工作,javascript,jsp,jxl,Javascript,Jsp,Jxl,以下jsp代码未生成任何excel文件。请帮忙。或者有人能告诉我从jsp/javascript将表数据导出到excel工作表的其他方法吗 <%@page contentType="text/html" pageEncoding="UTF-8" import="java.util.*"%> <%@page language="java" import="java.sql.*"%> <%@page language="java" import="pack.DbBean"

以下jsp代码未生成任何excel文件。请帮忙。或者有人能告诉我从jsp/javascript将表数据导出到excel工作表的其他方法吗

<%@page contentType="text/html" pageEncoding="UTF-8" import="java.util.*"%>
<%@page language="java" import="java.sql.*"%>
<%@page language="java" import="pack.DbBean"%>
<%@ page import="java.io.*"  %>
<%@ page import="jxl.*"  %>
<%@ page import="jxl.write.*"  %>

<%@ page import="jxl.Workbook"  %>
<%@ page import="jxl.write.Label"  %>
<%@ page import="jxl.write.WritableSheet"  %>
<%@ page import="jxl.write.WritableWorkbook"  %>



<jsp:useBean id="db" class="pack.DbBean" scope="session"/>

<%
try{
WritableWorkbook workbook = Workbook.createWorkbook(new File("output.xls"));
WritableSheet sheet = workbook.createSheet("First Sheet", 0);
Label label = new Label(0, 2, "A label record");
sheet.addCell(label);

jxl.write.Number number = new jxl.write.Number(3, 4, 3.1459);
sheet.addCell(number);

workbook.write();
workbook.close();
}
catch(Exception e)
      {
       throw new ServletException("Exception in Excel Sample Servlet", e);
      } finally
      {
       if (out != null)
        out.close();
      }
%>

我想这会创建excel工作表,但您的代码中没有任何内容会将其发送回浏览器。如果我没记错的话,您可以获取输出流的句柄,然后自己从JSP发送,但这确实不是一个好的解决方案。JSP页面并不打算以这种方式使用

servlet或JAX-RSWeb服务将是更好的选择。您可以生成excel工作表,然后将其“保存”到输出流,该输出流是返回给客户端的响应。一定要注意退货时的内容类型