将flex datagrid导出为ex​​cel,哪个用java或flex实现更好?

时间:2011-08-07 09:10:56

标签: java flex java-ee actionscript

使用平台j2ee,datagrid的数据来自java dao(来自数据库),所以哪种方式更好,用java dao或flex?thx将datagrid的数据导出到Excel,忘了我的英文不好..

3 个答案:

答案 0 :(得分:0)

你真正的问题是它有更多的支持。 在flex中对我来说,我找到了2个解决这个问题的方法:

  1. 正在使用动作脚本库as3xls http://code.google.com/p/as3xls/ - 它导出一个真正的Excel文档,但它有一个缺点 它来自我与他的过期它只支持英语字符它不是出口无法识别的字符

  2. 正在保存一个包含html表格式的feak xls文件,是的吗?

答案 1 :(得分:0)

我建议使用服务器端实现方法。在我正在工作的公司里,我们都试过了(但好吧是.NET)。到目前为止,我们在与Flex结合使用时出现了很多文档导出问题(也就是PDF [并不具有讽刺意义])。我记得以下问题:

  • 您可能需要更新版本的Flash插件(> = 10.0)(可能会导致遗留问题)
  • 指定日期
  • 等不同数据类型时出现问题
  • 最终花了比预期更多的人日

服务器端实现可能需要更多努力(在第一步中),但

  • Java更强大
  • 它更快
  • 可以进行更多配置
  • (垃圾收集效果更好)

答案 2 :(得分:0)

我还在我的flex应用程序中处理了这个问题,即是否在客户端或服务器端执行datagrid导出。

我最初使用as3xls在客户端导出数据网格(如上所述)。它起初运作良好,但一旦达到限制(又无法导出非ASCII字符),就开始给我带来真正的麻烦。这是我停止使用as3xls的时候。

如果您不要求datagrid导出具有任何特定格式,则另一个选项是将datagrid内容导出为逗号分隔字符串,并将该字符串保存到CSV文件,所有这些都来自客户端。这样可以避免特定数据类型(日期)的问题,完全控制导出的文本,并写出一个非常宽松和灵活的文件格式。而且,您可以自己编写基础架构代码,以便将数据网格内容往返于您的服务器,并在导出数据的大小和格式可能不合理的情况下返回。

如果你确实需要格式化或者java的强大功能来处理你的导出,我建议使用像Apache POI这样的MS Office API,使你能够更好地将数据格式化为标准XLS或XLSX文档。这最终成为我们采用的解决方案(除了我们使用SmartXLS作为我们的Excel API),以便更好地控制导出数据的布局和格式,以及向客户提供XLS / XLSX文件更多专业,并且比CSV更容易提供给精通计算机的客户。