【问题标题】:Passing HTML table from JSP to Java request object将 HTML 表从 JSP 传递到 Java 请求对象
【发布时间】:2010-07-16 02:58:42
【问题描述】:

我想知道是否有一种方法可以使用 Java 请求对象从我的 JSP 页面传递 HTML 表。

更准确地说,这就是我的桌子的样子..

table id="tableid"
thead
tr
th...column1 header.../td
th...column2 header.../td
/tr
/thead

身体
tr
td...column1 数据../td
td..column2 数据../td
/tr
/tbody

/表

我的 Java 代码中有一个方法 getExcelVersion(),我想将上表作为参数传递给该方法。

我实际上想将表中的数据(column1 数据、column2 数据)作为 List、ArrayList 或任何数据类型传递,而不是实际的 HTML。我基本上想要实现的目标如下:

我有一个 HTML 表格,我需要在单击按钮时将其导出到 Excel。为此,我使用了来自 Apache-POI 的库,以及以下内容。代码块。

HSSFWorkbook workbook = getExcelVersion(); resp.setContentType("application/vnd.ms-excel"); resp.setHeader("Content-Disposition", "attachment; filename=\"contacts.xls\""); workbook.write(resp.getOutputStream()); resp.flushBuffer();

现在,我想知道如何将表数据(column1 数据,column2 数据)传递给我的 getExcelVersion() 方法。

谢谢,
英式。

【问题讨论】:

  • 你到底想传递什么给你的方法?从您的示例中,就好像您想传回 HTML 代码一样正确吗?
  • 这个问题老实说没意义。我认为您混淆了一些术语和/或正在寻找解决方案的错误方向。我认为最好退后一步,详细阐述实际的功能需求,尽管您认为 this 是“正确”的解决方案(但实际上根本不是)。

标签: java html jsp


【解决方案1】:

Apache POI 不将 HTML 表格作为输入,而只是完全值得的 Java 对象。只需在 servlet 中重新加载与在 JSP 中为初始显示加载相同的数据,然后将其提供给 Apache POI,而不是转发给 JSP。如果要避免重新加载相同的数据,可以考虑将其存储在会话范围内,但这会对服务器内存使用和客户端体验产生负面影响。

至少,我假设您的 JSP/Servlet/数据库代码写得很好,否则将需要大量重构/重写工作。

相关问题:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-23
    • 2011-05-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多