`

使用POI通过servlet导出数据到Excel文件中

    博客分类:
  • Java
阅读更多
package cn.com.songjy.servlet;

import java.io.IOException;
import java.io.OutputStream;
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;

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

import org.apache.commons.codec.binary.Base64;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Row;

public class ExcelServlet extends HttpServlet {
	
	private static final long serialVersionUID = 1L;
       
    public ExcelServlet() {}

	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		doPost(request, response);
	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		response.setHeader("Connection", "close");
		response.setHeader("Content-Type", "application/vnd.ms-excel;charset=UTF-8");
		String filename = "会议记录清单.xls";
		filename = encodeFileName(request, filename);
		response.setHeader("Content-Disposition", "attachment;filename=" + filename);
		
		HSSFWorkbook wb = new HSSFWorkbook();
		HSSFSheet sheet = wb.createSheet("会议记录清单");
		//wb.setSheetName(0, "会议记录清单");
		
		String[][] content = {
				{ "流水号", "开始时间", "结束时间", "会议时长(分)", "会议人数", "实际参与人数" },
				{ "1", "2012-03", "2012-05", "45", "5", "3" } };
		
		for(int i=0; i<content.length; i++){
			Row row = sheet.createRow(i);
			for (int j=0; j<content[i].length; j++) {
				row.createCell(j).setCellValue(content[i][j]);
			}
		}
		
		
		OutputStream out = response.getOutputStream();
		wb.write(out);
		out.close();
	}
	
	public  String encodeFileName(HttpServletRequest request,
			String fileName) throws UnsupportedEncodingException {
		String agent = request.getHeader("USER-AGENT");
		if (null != agent && -1 != agent.indexOf("MSIE")) {
			return URLEncoder.encode(fileName, "UTF-8");
		} else if (null != agent && -1 != agent.indexOf("Mozilla")) {
			return "=?UTF-8?B?"
					+ (new String(Base64.encodeBase64(fileName
							.getBytes("UTF-8")))) + "?=";
		} else {
			return fileName;
		}
	}

}


使用线程每隔一小时创建一个CSV文件报表:http://www.oschina.net/code/snippet_47886_20440

参阅:http://www.oschina.net/code/snippet_992559_20852
  • 大小: 40.4 KB
分享到:
评论

相关推荐

    POI导出Excel文件

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

    JSP SERVLET 导出数据库内容到EXCEL

    本篇主要探讨如何利用JSP和Servlet将数据库中的数据导出到Excel文件,这对于数据分析、报告生成等场景非常实用。 首先,我们需要了解JSP和Servlet的基本概念。JSP是一种动态网页技术,它允许开发者在HTML页面中嵌入...

    servlet导入导出excel

    这个过程涉及到Java基础、Servlet规范、文件上传、数据库操作以及Apache POI库的使用。通过这种方式,你可以构建一个功能完善的Web应用,允许用户方便地导入和导出Excel数据,从而提升数据处理的效率和便捷性。

    使用POI数据导出到Excel

    这些项目可以帮助你更深入地理解如何在实际应用中使用Apache POI。 总的来说,Apache POI为Java开发者提供了一个强大且灵活的工具,可以方便地进行Excel数据的读写操作。通过学习和实践这些示例,你可以熟练掌握在...

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

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

    文件下载 用poi导出excel文档

    ### 文件下载:使用POI导出Excel文档 在日常工作中,我们经常需要处理大量数据,并将其以Excel格式导出供用户下载。Java中一个非常强大的工具包——Apache POI可以帮助我们实现这一需求。Apache POI是一个用于读写...

    poi导出excel表格

    本教程将详细讲解如何使用Apache POI在Web环境中导出Excel表格,避免生成不必要的临时文件,从而优化系统资源管理。 一、Apache POI简介 Apache POI 是一个开源项目,它提供了Java API来处理Microsoft的Office格式...

    java利用POI技术上传&导出Excel表格并保存数据至数据库

    在Java开发中,处理Excel文件是一项常见的任务,尤其是在数据导入导出、数据分析和报表生成等场景。Apache POI是一个强大的库,专为处理Microsoft Office格式的文件,包括Excel(.xlsx 和 .xls)文档。本篇文章将...

    POI导出操作Excel

    在这个例子中,我们看到如何使用POI库来将数据从数据库导出到Excel文件中。以下是关于这个话题的详细知识点: 1. **Apache POI**: Apache POI 是一个开源项目,它允许开发人员使用Java读取、写入和修改Microsoft ...

    POI导出数据到EXCEL

    通过以上步骤,我们就可以在Java Web应用中成功地使用Apache POI将数据导出到Excel文件。这个过程涉及到的工作包括创建工作簿、工作表、行和单元格,设置样式,以及将结果写入到响应流中供用户下载。注意在处理大量...

    POI导出与生产Excel.rar

    这个“POI导出与生产Excel.rar”压缩包包含两个示例项目,"POITest"和"POIExport",分别演示了如何使用Java编程语言通过Apache POI库创建和导出Excel文件。 首先,我们来看"POITest"项目。这个项目可能包含了创建...

    txt导入到mysql数据库,利用poi导出到excel

    本话题将详细讨论如何使用TXT文件导入MySQL数据库以及利用Apache POI库导出数据到Excel。 首先,我们来探讨如何将TXT文件的数据导入到MySQL数据库。TXT文件是一种常见的文本格式,通常用于存储结构化或非结构化数据...

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

    在SpringBoot应用中,使用Apache ...无论是导出数据到Excel,还是从Excel中导入数据,都能通过 POI 提供的丰富API实现。这使得在开发过程中,我们可以轻松地处理大量结构化的数据,例如报表生成、数据交换等应用场景。

    POI导出EXCEL的示例

    在本文中,我们将深入探讨如何使用POI库来导出Excel文件,这在大数据处理、报表生成和数据交换等场景中非常常见。 首先,让我们了解什么是Apache POI。POI是“Poor Obfuscation Implementation”的首字母缩写,它...

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

    1. 使用Apache POI读取Excel文件,遍历每一行每一列,将数据存储到Java对象中。 2. 创建JDBC连接,与数据库建立通信。这通常涉及到设置数据库URL、用户名、密码等信息。 3. 预编译SQL语句,根据Excel中的数据生成...

    servlet+api导出excel

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

    SpringMvc 使用poi导入导出Excel

    本篇文章将详细介绍如何在Spring MVC项目中使用Apache POI库来实现Excel的导入和导出。 Apache POI是Apache软件基金会的一个开源项目,专门用于读写Microsoft Office格式的文件,包括Excel。在Java中,POI提供了API...

    poi操作Excel导入导出(web项目)

    - 文件上传:使用Servlet或类似库处理用户上传的Excel文件,将其保存到服务器的某个位置。 - 读取文件:创建`Workbook`对象,传入Excel文件的输入流。 - 遍历Sheet和Row:通过`Workbook`获取Sheet,然后遍历每一...

    jsp中使用poi导入导出Excel

    4. 处理结果集,将Excel中的数据插入数据库,或者从数据库中获取数据填充Excel。 5. 最后,记得关闭所有打开的资源,如ResultSet、Statement和Connection。 在实际应用中,为了提高性能和安全性,推荐使用...

Global site tag (gtag.js) - Google Analytics