struts2中将jsp table中的数据导出到excel表格中

原创 2013年12月04日 20:09:11

struts2中将jsp table中的数据导出到excel表格中

近日,在做一个练习,将jsp的table中显示的数据导出到excel表格中(数据来自数据库),项目使用SSH框架,jsp页面有一个连接,连接到后台一个action,该action负责把数据写入excel文件。

相关代码如下:


//jsp连接
<a href="exportDataToExcel">导出数据</a>
//struts2 action配置
 <action name="exportDataToExcel" class="com.petstore.action.ExportDataToExcel"
            method="exportData">
            <result name="data">/</result>
 </action>
//action代码

public class ExportDataToExcel extends ActionSupport {
    List<Log> logList = null;

    public String exportData() {

        Map<String, Object> session = ActionContext.getContext().getSession();
        logList = (List<Log>) session.get("logList");
        HttpServletResponse response = ServletActionContext.getResponse();

        // 创建工作表
        WritableWorkbook book = null;
        // response.reset();
        // 创建工作流
        OutputStream os = null;
        try {
            // 设置弹出保存对话框
            response.setContentType("application/x-msdownload");
           
            SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddhhmmss");
            //文件名,以当前秒为文件名
            String fileName = sdf.format(new Date());
            response.setHeader("Content-Disposition", "attachment; filename="
                    + fileName + ".xls");// 设置生成的文件名字
            os = response.getOutputStream();

            // 初始化工作表
            book = Workbook.createWorkbook(os);

        } catch (IOException e1) {
            e1.printStackTrace();
        }
        try {
           
            WritableSheet sheet = book.createSheet("日志信息", 0);
            
            // 字段名
            sheet.addCell(new jxl.write.Label(0, 0, "日志ID"));
            sheet.addCell(new jxl.write.Label(1, 0, "用户姓名"));
            sheet.addCell(new jxl.write.Label(2, 0, "用户IP"));
            sheet.addCell(new jxl.write.Label(3, 0, "请求路径"));
            sheet.addCell(new jxl.write.Label(4, 0, "是否登录"));
            sheet.addCell(new jxl.write.Label(5, 0, "请求时间"));
            // 添加数据
            for (int i = 1; i < logList.size(); i++) {

                sheet.addCell(new jxl.write.Label(0, i, logList.get(i)
                        .toString()));
                sheet.addCell(new jxl.write.Label(1, i, logList.get(i)
                        .getUsername()));
                sheet
                        .addCell(new jxl.write.Label(2, i, logList.get(i)
                                .getIp()));
                sheet
                        .addCell(new jxl.write.Label(3, i, logList.get(i)
                                .getUrl()));
                sheet.addCell(new jxl.write.Label(4, i, logList.get(i)
                        .getIsSuccess()));
                sheet.addCell(new jxl.write.Label(5, i, logList.get(i)
                        .getDate()));

            }
            book.write();
            book.close();
        } catch (Exception e) {
            e.printStackTrace();
        }

        return "data";

    }

}
 

结果如图


struts2导出数据到excel中方法(模板方法)

现在的项目需要把用户反馈的信息表中的数据导出到excel的需求。之前做过类似的事情,但是时间已经久远,只能网上搜了一下,对于struts2,基本使用poi的方法,但是感觉网上的方法比较乱及不靠谱(没有...
  • richerg85
  • richerg85
  • 2015年01月06日 15:54
  • 12196

Struts2简单导出数据到excel中方法(实例)

JSP页面:导出struts.xml:
  • u012070145
  • u012070145
  • 2017年06月14日 09:21
  • 979

struts2 用jxl 导出excel

使用struts2导出excel主要分两部分 1.配置一个输出流的action,如下配置了一个excel.action                         ...
  • edragonchina
  • edragonchina
  • 2010年06月09日 17:02
  • 6418

struts2+hibernate+poi导出Excel实例

本实例通过struts2+hibernate+poi实现导出数据导入到Excel的功能 用到的jar包:  poi 下载地址:http://poi.apache.org/根据查询条件的选择显示相应数据...
  • java_cxrs
  • java_cxrs
  • 2010年12月15日 13:57
  • 12101

struts2 使用注解 导出excel

做项目中需要用到导出excel的功能,记录一下。 1、使用jxl导出。 这个是从网上找的。这个不需要params inputName参数。 @Action(value = "vsealF...
  • robinpipi
  • robinpipi
  • 2012年07月20日 15:12
  • 4672

struts2导出数据到excel中方法(模板方法)需要资源及jar包

  • 2015年01月06日 16:01
  • 5.95MB
  • 下载

struts2 excel导入

实现excel导入 需要加入相关jar包:  poi-3.15-beta1.jar.jar poi-examples-3.15-beta1.jar poi-excelant-3.15-beta1.ja...
  • gxy_2015
  • gxy_2015
  • 2016年07月01日 13:51
  • 1082

struts2导出excel笔记

l例子很简单,就一个Action类和一个Service类   1.所需jar包 struts2需要jar包:commons-logging.jar、freemarker-2.3.8....
  • z69183787
  • z69183787
  • 2016年02月25日 17:01
  • 840

poi ,Struts2 导出Excel运用(一)

 最近忙于实现导出Excel
  • mypurse
  • mypurse
  • 2010年12月02日 20:14
  • 5535

小谈struts2导出excel表格的思路

如题,实现这个功能(excel2003和2007均适用),使用的第三方jar包是 poi ,主要是记录一下做过的东西,以便日后用。   一。jsp页面 :                  ...
  • baolong47
  • baolong47
  • 2012年01月05日 11:27
  • 5426
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:struts2中将jsp table中的数据导出到excel表格中
举报原因:
原因补充:

(最多只允许输入30个字)