`
zhangshun918
  • 浏览: 1506 次
  • 性别: Icon_minigender_1
  • 来自: 南京
文章分类
社区版块
存档分类
最新评论

servlet 实现excel 导出

 
阅读更多

package com.test;

import java.io.IOException;
import java.io.OutputStream;
import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import jxl.Workbook;
import jxl.write.Label;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;

/**
 * Servlet implementation class TestExcel
 */
public class TestExcel extends HttpServlet
{
    private static final long serialVersionUID = 1L;

    /**
     * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
     *      response)
     */
    protected void doGet(HttpServletRequest request,
            HttpServletResponse response) throws ServletException, IOException
    {

        StringBuffer sbFileName = new StringBuffer();
        sbFileName.append("问卷类型维护报表.xls");
        String fileName = "";

        /*
         * 浏览器不同 可能会造成导出的excel文件名出现乱码,解决方案是判断浏览器 然后根据不同的浏览器返回不同的编码格式.
         */
        if (request.getHeader("User-Agent").toLowerCase().indexOf("firefox") > 0)
        {
            fileName = new String(sbFileName.toString().getBytes("utf-8"),
                    "iso-8859-1");
        }
        else
        {
            fileName = URLEncoder.encode(sbFileName.toString(), "UTF-8");

        }
        response.reset();
        response.setCharacterEncoding("UTF-8");
        response.setContentType("application/x-excel");
        response.setHeader("Content-Disposition", "attachment; filename="
                + fileName);

        OutputStream os = response.getOutputStream();
        List<User> list = new ArrayList<User>();
        User u1 = new User(1, "A", 21);
        User u2 = new User(2, "B", 22);
        User u3 = new User(3, "C", 23);
        User u4 = new User(4, "D", 24);
        list.add(u1);
        list.add(u2);
        list.add(u3);
        list.add(u4);
        try
        {
            exportToExcel(list, os);
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }

    }

    /**
     * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
     *      response)
     */
    protected void doPost(HttpServletRequest request,
            HttpServletResponse response) throws ServletException, IOException
    {
        this.doGet(request, response);
    }

    private static void exportToExcel(List<User> list, OutputStream os)
            throws Exception
    {
        WritableWorkbook workbook = Workbook.createWorkbook(os);
        WritableSheet sheet1 = workbook.createSheet("检查表", 0);
        sheet1.addCell(new Label(0, 0, "用户编号"));
        sheet1.addCell(new Label(1, 0, "用户姓名"));
        sheet1.addCell(new Label(2, 0, "用户年龄"));
        for (int i = 0, n = list.size(); i < n; i++)
        {
            User info = (User) list.get(i);
            Label id = new Label(0, i + 1,String.valueOf(info.getId()));
            sheet1.addCell(id);

            Label name = new Label(1, i + 1, info.getName());
            sheet1.addCell(name);

            Label age = new Label(2, i + 1, String.valueOf(info.getAge()));
            sheet1.addCell(age);
        }
        workbook.write();
        workbook.close();
    }
}
 
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    JSP SERVLET 导出数据库内容到EXCEL

    在“JSP SERVLET 导出数据库内容到EXCEL”的场景中,我们通常会通过以下步骤来实现: 1. **用户输入SQL语句**:用户在网页上的文本框中输入自定义的SQL查询语句,这使得系统具有很高的灵活性,可以根据需要获取不同...

    servlet导入导出excel

    在这个场景中,我们讨论的是如何使用Servlet和JSP(JavaServer Pages)来处理Excel文件的导入和导出,尤其是与MySQL数据库的交互。Excel文件有两种主要格式:XLS(Excel 97-2003工作簿)和XLSX(Excel 2007及以后...

    servlet+api导出excel

    本场景中,"servlet+api导出excel"指的是利用Servlet API来实现从数据库(这里是Oracle)中获取数据并导出为Excel文件供用户下载的功能。下面将详细解释这个过程涉及的技术点。 首先,我们需要了解Servlet API的...

    使用JSP+jqueryUI+java Servlet通过Apache POI实现Excel导入导出

    在Excel导入导出过程中,Servlet将处理JSP提交的文件上传请求,读取Excel数据,并将数据保存到数据库或生成新的Excel文件。 Apache POI是Apache软件基金会的一个开源项目,专门用于读写Microsoft Office格式的文件...

    struts2+poi 实现Excel导出

    在"Struts2+POI实现Excel导出"的场景中,开发者可以利用这两个工具为用户提供数据导出到Excel的功能。以下是一些关键知识点: 1. **Struts2框架**:Struts2是Action Servlet的一种实现,它是基于拦截器的MVC框架,...

    SpringBoot使用poi实现Excel导入与导出

    在SpringBoot应用中,使用Apache POI库可以方便地实现Excel的导入与导出功能。Apache POI是一个流行的API,它允许程序员创建、修改和显示Microsoft Office格式的文件,其中包括Excel(.xls和.xlsx)文件。在这个场景...

    java简单的Excel导出功能

    在Java编程环境中,实现Excel导出功能是一项常见的需求,尤其在数据处理和报表生成时。以下将详细讲解如何使用Java实现简单的Excel导出功能。 首先,我们需要了解的是Java中用于处理Excel文件的主要库:Apache POI...

    POI导出Excel文件

    这个实例提供了两种方法来导出Excel文件:通过Servlet和通过main方法。这两种方法都是在Java环境中操作Excel数据的有效方式。 首先,让我们详细了解一下Apache POI库。POI提供了一个API,允许开发者在Java应用程序...

    excel导出的js

    标题中的"excel导出的js"指的就是使用JavaScript库或方法来生成Excel文件。JavaScript是一种运行在客户端和服务器端的脚本语言,由于其强大的DOM操作能力和动态特性,常用于网页交互和前后端数据处理。对于Excel导出...

    jsp+servlet实现增删改查

    本项目以"jsp+servlet实现增删改查"为主题,旨在利用这两者实现CRUD(Create、Read、Update、Delete)操作,这是任何数据管理系统的基石。 首先,`CRUD`是数据库操作的基本动作。创建(Create)指的是向数据库添加...

    excel导出的jar

    `servlet-api.jar`是Java Servlet API的库文件,这表明这个项目可能是在服务器环境中运行,通过Servlet技术接收请求并返回Excel导出的结果。Servlet是Java Web开发中的基础组件,用于处理HTTP请求,并可以将处理结果...

    Java中实现简单的Excel导出

    Java中实现简单的Excel导出 在Java中实现Excel导出是许多开发者经常遇到的问题,今天我们将分享如何使用Apache POI库来实现简单的Excel导出。Apache POI是Apache软件基金会下的一个开源项目,提供了对Microsoft ...

    java实现导入导出Excel表

    在Java编程领域,导入和导出Excel表格是一项常见的任务,特别是在数据处理、报表生成和数据分析等场景中。本项目提供了一个整合了Spring、Hibernate和Struts2(简称SSH)三大框架的小型应用示例,利用Apache POI库来...

    JFinal实现 Demo - 导出Excel.rar

    首先,要实现Excel导出,我们需要引入一个支持Java操作Excel的库,Apache POI是广泛使用的这样一个库。Apache POI提供了对Microsoft Office格式文档的读写支持,包括Excel(XLS和XLSX)文件。因此,在项目中,你需要...

    jquery实现excel导出的方法

    在Web开发中,实现从网页上导出表格数据为Excel文件的需求较为常见。由于JavaScript自身不具备直接操作本地文件系统的权限,常规的操作文件方法受到限制。为了在不使用ActiveX控件的情况下实现这一功能,我们需要...

    Java使用POI实现Excel报表的导入和导出

    利用开源组件POI3.0.2,用java语言实现了动态导出Excel文档,并且也实现了Excel文档的导入。有完整的例子,可直接使用。ExportExcel类为导出Excel报表通用类。 1.将源代码导入eclipse中 2.部署项目,启动tomcat...

    Excel 导出 struts2 spring hibernate

    在Excel导出场景下,Action类将执行导出逻辑,并通过结果配置将生成的Excel文件返回给浏览器。 2. **Spring**:Spring可以作为依赖管理容器,将Struts2的Action与服务层(Service)组件进行依赖注入。同时,Spring...

    excel表导入数据库 数据库导出excel(idea平台)

    在这个主题中,我们将深入探讨如何使用Java技术栈,特别是基于IDEA开发环境,来实现在JSP和Servlet中进行Excel与数据库之间的数据导入和导出。 首先,我们需要了解Java中用于处理Excel文件的库,如Apache POI。...

    J2EE项目开发Excel导出

    在J2EE项目开发中,Excel导出是一项常见的需求,特别是在数据管理和报告生成场景中,如资产管理、财务报表等。这个描述提及的示例提供了一个完整的解决方案,包括所需的Java类和依赖库(Jar包),帮助开发者实现从...

    学生管理系统-数据挖掘,jsp+servlet,文件上传下载,数据库导入导出,excel导入导出。.zip

    总结来说,这个学生管理系统是一个综合运用了Java Web技术,包括jsp、servlet和MySQL数据库的项目,具备数据挖掘、文件上传下载、数据库及Excel数据的导入导出等功能。对于学习Java Web开发或进行毕业设计的学生而言...

Global site tag (gtag.js) - Google Analytics