- 浏览: 44211 次
- 性别:
- 来自: 地球
最新评论
-
ljm3256748:
是呀,难者不会,会者不难
工作第一天 -
maggieli:
CVS这么简单,还用学?
工作第一天 -
ouspec:
这个小品的确很一般。就这句好玩一点。
“你太有才了”成最新流行语 -
Allen:
在中国的论坛上,经常会出现这样的“文章出口转内销”的事情……
...
如何学习Hibernate -
daoger:
http://www.iteye.com/topic/255
如何学习Hibernate
JSP中将查询结果导出为excel
转自洋葱头的BLOG 原文:http://blog.sina.com.cn/u/3f6efc4a0100063o
如何将JSP中将查询结果导出为Excel,其实可以利用jakarta提供的POI接口将查询结果导出到excel。POI接口是jakarta组织的一个子项目,它包括POIFS,HSSF,HWSF,HPSF,HSLF,目前比较成熟的是HSSF,它是一组操作微软的excel文档的API,现在到达3.0版本,已经能够支持将图片插入到excel里面。下面简要的介绍一下它的用法,在这里http://apache.justdn.org/jakarta/poi/dev/bin/可以下载到它的最新版,下载下来以后,将它解压,并将其中的poi-3.0-alpha1-20050704.jar,poi-contrib-3.0-alpha1-20050704.jar,poi-scratchpad-3.0-alpha1-20050704.jar加入到你的开发环境的classpath中(比如JBUILDER可以点击工具》configure jdks》add……)。在解压的目录中,有一个docs目录是一些文档,其中里面有两个目录特别有用,一个是hssf目录,一个是apidocs目录。我从它的英文文档中摘出一些例子,放在一个java文件里面,加上简单的注释,你可以下载这个java文件下来玩玩。下面是java文件的一部分。
java 代码
- import java.io.*;
- import org.apache.poi.hssf.usermodel.*;
- import org.apache.poi.hssf.util.*;
- import org.apache.poi.hssf.usermodel.contrib.*;
- import javax.imageio.ImageIO;
- public class Main {
- public Main() {
- }
- //演示如何创建一个工作簿
- //用这种方法创建的工作簿有问题,用Excel打开以后发现下面Tab没有选中
- public static void ex1() {
- try {
- org.apache.poi.hssf.usermodel.HSSFWorkbook wb = new org.apache.poi.
- hssf.usermodel.HSSFWorkbook();
- java.io.FileOutputStream fileOut = new java.io.FileOutputStream(
- "ex1.xls");
- wb.write(fileOut);
- fileOut.close();
- }
- catch (Exception eee) {
- eee.printStackTrace();
- }
- }
- //演示如何创建一个工作表
- public static void ex2() {
- try {
- org.apache.poi.hssf.usermodel.HSSFWorkbook wb = new org.apache.poi.
- hssf.usermodel.HSSFWorkbook();
- org.apache.poi.hssf.usermodel.HSSFSheet sheet1 = wb.createSheet(
- "new sheet");
- org.apache.poi.hssf.usermodel.HSSFSheet sheet2 = wb.createSheet(
- "second sheet");
- java.io.FileOutputStream fileOut = new java.io.FileOutputStream(
- "ex2.xls");
- wb.write(fileOut);
- fileOut.close();
- }
- catch (Exception eee) {
- eee.printStackTrace();
- }
- }
- //演示如何创建一个单元格
- public static void ex3() {
- try {
- org.apache.poi.hssf.usermodel.HSSFWorkbook wb = new org.apache.poi.
- hssf.usermodel.HSSFWorkbook();
- org.apache.poi.hssf.usermodel.HSSFSheet sheet = wb.createSheet(
- "new sheet");
- // Create a row and put some cells in it. Rows are 0 based.
- org.apache.poi.hssf.usermodel.HSSFRow row = sheet.createRow( (short)
- 0);
- // Create a cell and put a value in it.
- org.apache.poi.hssf.usermodel.HSSFCell cell = row.createCell( (short)
- 0);
- cell.setCellValue(1);
- // Or do it on one line.
- row.createCell( (short) 1).setCellValue(1.2);
- row.createCell( (short) 2).setCellValue("This is a string");
- row.createCell( (short) 3).setCellValue(true);
- // Write the output to a file
- java.io.FileOutputStream fileOut = new java.io.FileOutputStream(
- "ex3.xls");
- wb.write(fileOut);
- fileOut.close();
- }
- catch (Exception eee) {
- eee.printStackTrace();
- }
- }
- //演示如何操作自选图形
- public static void ex27() {
- try {
- HSSFWorkbook wb = new HSSFWorkbook();
- HSSFSheet sheet = wb.createSheet("new sheet");
- HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
- HSSFClientAnchor a = new HSSFClientAnchor(0, 0, 1023, 255,
- (short) 1, 0, (short) 1, 0);
- HSSFSimpleShape shape1 = patriarch.createSimpleShape(a);
- shape1.setShapeType(HSSFSimpleShape.OBJECT_TYPE_LINE);
- HSSFTextbox textbox1 = patriarch.createTextbox(
- new HSSFClientAnchor(0, 0, 0, 0, (short) 1, 1, (short) 2, 2));
- textbox1.setString(new HSSFRichTextString("This is a test"));
- HSSFFont font = wb.createFont();
- font.setItalic(true);
- font.setUnderline(HSSFFont.U_DOUBLE);
- HSSFRichTextString string = new HSSFRichTextString("Woo!!!");
- string.applyFont(2, 5, font);
- textbox1.setString(string);
- // Create a shape group.
- HSSFShapeGroup group = patriarch.createGroup(
- new HSSFClientAnchor(0, 0, 900, 200, (short) 2, 2, (short) 2, 2));
- // Create a couple of lines in the group.
- shape1 = group.createShape(new HSSFChildAnchor(3, 3, 500, 500));
- shape1.setShapeType(HSSFSimpleShape.OBJECT_TYPE_LINE);
- ( (HSSFChildAnchor) shape1.getAnchor()).setAnchor( (short) 3, 3,
- 500, 500);
- HSSFSimpleShape shape2 = group.createShape(new HSSFChildAnchor( (short)
- 1, 200, 400, 600));
- shape2.setShapeType(HSSFSimpleShape.OBJECT_TYPE_LINE);
- group.setCoordinates(10, 10, 20, 20); // top-left, bottom-right
- FileOutputStream fileOut = new FileOutputStream("ex27.xls");
- wb.write(fileOut);
- fileOut.close();
- }
- catch (Exception eee) {
- eee.printStackTrace();
- }
- }
- //演示如何设定outline
- public static void ex28() {
- try {
- HSSFWorkbook wb = new HSSFWorkbook();
- HSSFSheet sheet1 = wb.createSheet("new sheet");
- sheet1.groupRow(5, 14);
- sheet1.groupRow(7, 14);
- sheet1.groupRow(16, 19);
- sheet1.groupColumn( (short) 4, (short) 7);
- sheet1.groupColumn( (short) 9, (short) 12);
- sheet1.groupColumn( (short) 10, (short) 11);
- FileOutputStream fileOut = new FileOutputStream("ex28.xls");
- wb.write(fileOut);
- fileOut.close();
- }
- catch (Exception eee) {
- eee.printStackTrace();
- }
- }
- //演示如何设定outline
- public static void ex29() {
- try {
- HSSFWorkbook wb = new HSSFWorkbook();
- HSSFSheet sheet = wb.createSheet("new sheet");
- HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
- HSSFClientAnchor a = new HSSFClientAnchor(0, 0, 1023, 255,
- (short) 1, 0, (short) 1, 0);
- HSSFShapeGroup group = patriarch.createGroup(a);
- group.setCoordinates(0, 0, 80 * 4, 12 * 23);
- float verticalPointsPerPixel = a.getAnchorHeightInPoints(sheet) /
- (float) Math.abs(group.getY2() - group.getY1());
- EscherGraphics g = new EscherGraphics(group, wb,
- java.awt.Color.black,
- verticalPointsPerPixel);
- EscherGraphics2d g2d = new EscherGraphics2d(g);
- //drawChemicalStructure( g2d );
- FileOutputStream fileOut = new FileOutputStream("ex29.xls");
- wb.write(fileOut);
- fileOut.close();
- }
- catch (Exception eee) {
- eee.printStackTrace();
- }
- }
- //演示如何处理图片
- public static void ex30() {
- try {
- HSSFWorkbook wb = new HSSFWorkbook();
- HSSFSheet sheet = wb.createSheet("new sheet");
- HSSFPatriarch patriarch = sheet.createDrawingPatriarch();
- HSSFClientAnchor anchor;
- anchor = new HSSFClientAnchor(0, 0, 0, 255, (short) 2, 2, (short) 4,
- 7);
- anchor.setAnchorType(2);
- patriarch.createPicture(anchor,
- loadPicture(
- "1.jpg",
- wb));
- FileOutputStream fileOut = new FileOutputStream("ex30.xls");
- wb.write(fileOut);
- fileOut.close();
- }
- catch (Exception eee) {
- eee.printStackTrace();
- }
- }
- private static int loadPicture(String filePath, HSSFWorkbook wb) {
- int result = 0;
- try {
- ByteArrayOutputStream byteArrayOut = new ByteArrayOutputStream();
- java.awt.image.BufferedImage bufferImg = ImageIO.read(new File(
- filePath));
- ImageIO.write(bufferImg,"jpg",byteArrayOut);
- result = wb.addPicture(byteArrayOut.toByteArray(),HSSFWorkbook.PICTURE_TYPE_JPEG);
- }
- catch (Exception e) {
- e.printStackTrace();
- }
- return result;
- }
- }
那么JSP中查询页面导出到excel只要在服务器端利用HSSF形成xls文件,然后让用户来下载这些文件就行了。
发表评论
-
转载:关于 lucene2.0 的创建、检索和删除功能的完整实现
2007-05-14 21:22 1603最近要 ... -
FileUpload的学习笔记
2007-03-30 11:15 1795Fi ... -
CVS技术文档
2007-03-21 17:46 1491文章来源:转发 目 录 1 ... -
Hibernate 2 升级为Hibernate 3 的注意事项
2007-02-12 11:10 1344Hibernate 2 升级为Hibernate ... -
如何学习Hibernate
2007-02-12 10:39 2493如何学习Hibernate 文章来源:转载 作者:robbi ... -
Hibernate包作用详解
2007-02-12 10:34 1254Hibernate包作用详解 作者:hibernate.org ... -
native2ascii的使用
2007-02-12 10:14 1812native2ascii的使用 native2ascii [- ... -
如何下手学JAVA
2007-02-09 11:42 1017如何下手学JAVA 一直都有新来的坛友问"如 ... -
JAVA初学的一些技巧
2007-02-09 11:36 925JAVA初学的一些技巧 学JAVA时间短了,可总没有一点自己原 ... -
java中的一些常用词汇
2007-02-09 11:32 1030java中的一些常用词汇 Abstract c ... -
Java学习从入门到精通
2007-02-09 11:16 1264学习java也有一段时间了 ...
相关推荐
总结来说,"JSP SERVLET 导出数据库内容到EXCEL"是一个典型的Java Web应用场景,结合了JSP的视图呈现、Servlet的业务处理和数据库操作,以及第三方库Apache POI的文件生成能力,为企业级应用提供了强大的数据导出...
当需要从JSP页面导出数据到Excel文件时,这通常涉及到服务器端的数据处理和响应生成。下面我们将详细讨论如何在JSP页面上实现这个功能。 1. **使用Apache POI库** Apache POI是一个开源项目,提供API来处理...
### 如何在JSP中将页面内容导出为Excel文档 #### 标题解析:导出JSP页面为Excel文档 本标题明确指出本文的主要内容是介绍如何将JSP页面的内容转换并导出为Excel文档。JSP(JavaServer Pages)是一种基于Java的技术...
本篇文章将详细探讨如何在JSP中实现Excel的导出和导入功能,这对于构建企业级办公系统是非常实用的。 一、导出Excel 1. **使用Apache POI库**:Apache POI是一个流行的API,用于读取和写入Microsoft Office格式的...
在IT行业中,尤其是在Web开发领域,常常需要将网页上的数据导出为Excel格式,以便用户进行下载和进一步处理。本文将详细介绍如何使用JSP(JavaServer Pages)来实现这一功能,特别是针对页面上的HTML表格数据。 ...
**JSP Struts2 分页 导出Excel** 在Web开发中,经常需要处理大量数据,这时分页显示和导出功能就显得尤为重要。JSP(JavaServer Pages)和Struts2作为Java Web开发中的常见技术,可以帮助我们构建动态、交互的网页...
下面将详细介绍如何使用JSP实现Excel和Word的导出功能。 **一、导出Excel** 1. **引入库**: 要导出Excel,通常我们会用到Apache POI库,这是一个Java API,专门用于处理Microsoft Office格式的文件,包括Excel。...
### 如何在JSP导出到Excel文件:深入解析与实践 #### 一、通过设置Content-Type导出至Excel 在JSP环境下实现文件导出至Excel的第一种方法较为简单,主要通过修改JSP页面的`Content-Type`属性来完成。`Content-Type...
在日常开发中,我们需要能够把页面上一个表格的内容导出到Excel中,然后用户修改后再导回到表格中的功能。 在这里,通过使用JQUERY+JQUERY UI+JSON-LIB+POI实现这个功能数据导出设计:通过使用JQUERY分析表格的...
"jsp页面数据通过excel导出"这个主题就是关于如何在Java Web应用程序中利用JSP(JavaServer Pages)技术和Apache POI库将动态生成的数据导出为Excel文件。Apache POI是一个强大的API,它允许开发者读写Microsoft ...
在我们的场景中,JSP页面可能展示了一张由数据库查询结果或业务逻辑生成的表格。 JExcelAPI(jxl)是Java的一个开源库,专门用于读取和写入Excel文件。它可以方便地创建、修改和操作Excel工作表,包括设置单元格...
在Java Web开发中,JSP(JavaServer Pages)经常用于创建动态网页,而与之配合进行Excel文件导入导出的功能则常使用Apache POI库。Apache POI是Apache软件基金会的一个开源项目,提供了处理Microsoft Office格式文件...
### Java与JSP环境下导出Excel表格:深入解析与实践 在现代企业级应用开发中,数据导出至Excel表格是一种常见的需求,特别是在报表、数据分析和数据交换等场景中。Java作为一种广泛使用的后端开发语言,配合JSP...
本主题聚焦于"JSP中table导出多表头excel"的技术实现,这是一种常见的需求,特别是在展示复杂表格数据时,多表头能够清晰地组织和展示信息。我们将探讨如何利用前台JavaScript技术来完成这一任务,并关注IE浏览器的...
本人试过了可以用,做jsp程序导出excel功能的可以参考下,下载后按照模版进行修改
在IT行业中,尤其是在Web开发领域,常常需要将数据导出为Excel格式,以便用户进行查看、分析或进一步处理。JSP(JavaServer Pages)作为Java的一种动态网页技术,经常被用来实现这种功能。本篇文章主要探讨了在使用...
本文将深入探讨如何在JSP环境中实现Excel文件的导入与导出功能,利用Apache POI库作为主要工具。 ### Apache POI简介 Apache POI是一个开源的Java API,用于读写Microsoft Office格式的文件,如Word、Excel等。它...
总结来说,将JSP页面的表格数据导出为Excel文件,需要结合前端的AJAX请求、后端的Java服务处理以及Apache POI库生成Excel文件。这个过程中需要注意数据的格式转换、文件流的处理以及用户体验的设计。通过熟练掌握...
**JSP页面统计模板**是一种基于JavaServer Pages (JSP)技术的应用,用于实现数据的打印、导出为Excel以及各种查询统计功能。在Web开发中,JSP被广泛用于创建动态网页,它允许开发者在HTML中嵌入Java代码,以实现...
在 eMan 系统的开发过程中,大家普遍使用的导出 Excel 的方法为 JXL,该方法功能强大,但是实际使用颇为繁缛,开发人员需要在代码中定义每个 cell 的内容和格式,开发用户格式要求严格,样式复杂的报表,使用该方法...