zoukankan      html  css  js  c++  java
  • struts2: 通过流输出实现exce导出

    参考下面代码,在Action中加一个方法:

     1     // 导出excel
     2     public String excel() throws Exception {
     3     StringBuffer excelBuf = new StringBuffer();
     4     excelBuf.append("运单号").append("	").append("始发站").append("	").append("目的站").append("
    ");
     5     excelBuf.append("112-00100100").append("	").append("PEK").append("	").append("SHA").append("
    ");
     6     excelBuf.append("112-00100111").append("	").append("PVG").append("	").append("XIY").append("
    ");
     7     excelBuf.append("112-00100122").append("	").append("SHA").append("	").append("HHY").append("
    ");
     8     String excelString = excelBuf.toString();
     9     excelStream = new ByteArrayInputStream(excelString.getBytes(), 0, excelString.getBytes().length);
    10     return "excel";
    11     }

    实质上是一个格式化的cvs文本文件,但是所有的excel/wps都能识别这种格式,导出的数据量不大,且没有复杂的线框格式要求时,这种处理方式最为方便

    struts2的配置文件:

     1 <package name="cba_index" ...>
     2     ...
     3     <action name="index_*" method="{1}" class="CbaAction">
     4         <result name="success">/mu-reservation/cba/index.jsp</result>            
     5         <!-- 导出excel -->
     6         <result name="excel" type="stream">
     7             <param name="contentType">application/vnd.ms-excel</param>    <!-- 注意这里的ContentType -->
     8             <param name="inputName">excelStream</param>                   <!-- 这里需要和Action里的变量名一致 -->
     9             <param name="contentDisposition">filename="download.xls"</param> <!-- 下载文件的名字 -->
    10             <param name="bufferSize">10240</param>  <!-- 下载文件的大小 10485760=10M -->
    11         </result>
    12     </action>
    13     ...
    14 </package>

    页面上

    1 <a href="index_excel.do" target="_blank">导出excel示例</a>

    导出后的文件打开效果:

  • 相关阅读:
    Perl Resources
    使用Perl管理Oracle数据库
    Tomcat 发布部署jsp网站—-使用自己的ip访问jsp网站
    Lode's Computer Graphics Tutorial Image Filtering
    Java Image Filters
    ZPhotoEngine超级算法库
    ps亮度对比度算法
    滤镜艺术---新海诚(你的名字)滤镜特效的实现解密
    Cocoa-GL-Tutorial
    Learning Cocoa with Objective-C
  • 原文地址:https://www.cnblogs.com/yjmyzz/p/3862573.html
Copyright © 2011-2022 走看看