- 浏览: 1031540 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (675)
- ios (214)
- android-course (5)
- unity3d (7)
- cocos2d (36)
- html5 (3)
- game (5)
- android (42)
- java (57)
- php (12)
- 创业 (10)
- SEO (3)
- 架构 (2)
- 数据库 (3)
- 产品设计 (9)
- 操作系统 (10)
- Web前端 (11)
- 其他 (50)
- GAE (1)
- mac os (8)
- Open Source (2)
- 序列号 (10)
- C (2)
- database (2)
- 算法 (6)
- 设计模式 (1)
- photoshop (1)
- 3dmax (1)
- maya (1)
- opengl (3)
- 游戏设计 (1)
- 趋势 (1)
- cocos2d-x (4)
- shell (3)
- c++ (30)
- lua (5)
- flash (1)
- spring (3)
- mysql (4)
- Git (6)
- xmpp (1)
- cocos2dx (14)
- mac (2)
- 编程规范 (2)
- windows (1)
- linux (5)
- coocs2dx (1)
- ubuntu (2)
- aws (1)
- OPENGLES (1)
- 原画 (1)
最新评论
-
jlees:
Best mobile app testing tool pc ...
iOS + XCode 4 + GHUnit = Mobile TDD+Continuous testing -
ipanda:
楼主,能否给一个Micro CloudFoundry的虚机或者 ...
Cloud Foundry使用及开发向导 -
love_zongming:
谢谢分享。。
visio2007序列号 -
雨花台舞水:
你这才是枪文把
套在 360 黑匣子外面的黑盒子:你被技术型枪稿吓到了么? -
hugh.wang:
改天试试
Mac版魔兽争霸3 1.24e下载
HTML页面并不总是向用户显示数据输出的最好方式,有时候需要生成不可改变的文件打印,PDF可能是种不错的选择。
Spring支持从数据动态生成PDF或Excel文件
下面这个简单实现的例子实现了spring输出PDF和Excel文件,为了使用Excel电子表格,你需要在你的classpath中加入poi-2.5.1.jar库文件,而对PDF文件,则需要iText.jar文件。它们都包含在Spring的主发布包中。
下面是测试项目代码:
1、控制器配置代码
<xml version="1.0" encoding="UTF-8"?> <DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"> <beans> <bean id="beanNameViewResolver" class="org.springframework.web.servlet.view.BeanNameViewResolver" /> <bean id="viewController" class="com.zhupan.spring.ViewController" /> <bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <property name="mappings"> <props> <prop key="/view*.shtml">viewControllerprop> <props> <property> <bean> <beans>
3、用于Excel视图的视图子类化
为了在生成输出文档的过程中实现定制的行为,我们将继承合适的抽象类。对于Excel,这包括提供一个 org.springframework.web.servlet.view.document.AbstractExcelView的子类,并实现 buildExcelDocument方法。
package com.zhupan.view; import java.util.Date; import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFCellStyle; import org.apache.poi.hssf.usermodel.HSSFDataFormat; import org.apache.poi.hssf.usermodel.HSSFRow; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.springframework.web.servlet.view.document.AbstractExcelView; public class ViewExcel extends AbstractExcelView { public void buildExcelDocument(Map model, HSSFWorkbook workbook, HttpServletRequest request, HttpServletResponse response) throws Exception { HSSFSheet sheet = workbook.createSheet("list"); sheet.setDefaultColumnWidth((short) 12); HSSFCell cell = getCell(sheet, 0, 0); setText(cell, "Spring Excel test"); HSSFCellStyle dateStyle = workbook.createCellStyle(); dateStyle.setDataFormat(HSSFDataFormat.getBuiltinFormat("m/d/yy")); cell = getCell(sheet, 1, 0); cell.setCellValue(new Date()); cell.setCellStyle(dateStyle); getCell(sheet, 2, 0).setCellValue(458); HSSFRow sheetRow = sheet.createRow(3); for (short i = 0; i < 10; i++) { sheetRow.createCell(i).setCellValue(i * 10); } } }
注意:如果要输出中文,需要制定编码
//中文显示指定编码
cell1.setEncoding(HSSFCell.ENCODING_UTF_16);
4、用于PDF视图的视图子类化
需要象下面一样继承org.springframework.web.servlet.view.document.AbstractPdfView,并实现buildPdfDocument()方法。
package com.zhupan.view; import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.web.servlet.view.document.AbstractPdfView; import com.lowagie.text.Document; import com.lowagie.text.Paragraph; import com.lowagie.text.pdf.PdfWriter; public class ViewPDF extends AbstractPdfView { public void buildPdfDocument(Map model, Document document, PdfWriter writer, HttpServletRequest request, HttpServletResponse response) throws Exception { List list = (List) model.get("list"); for (int i = 0; i < list.size(); i++) document.add(new Paragraph((String) list.get(i))); } }
5、其他文件
1)控制器ViewController
package com.zhupan.spring; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.web.servlet.ModelAndView; import org.springframework.web.servlet.mvc.multiaction.MultiActionController; import com.zhupan.view.ViewExcel; import com.zhupan.view.ViewPDF; public class ViewController extends MultiActionController { public ModelAndView viewPDF(HttpServletRequest request, HttpServletResponse response) throws Exception { List list = new ArrayList(); Map model = new HashMap(); list.add("test1"); list.add("test2"); model.put("list", list); ViewPDF viewPDF = new ViewPDF(); return new ModelAndView(viewPDF, model); } public ModelAndView viewExcel(HttpServletRequest request, HttpServletResponse response) throws Exception { List list = new ArrayList(); Map model = new HashMap(); list.add("test1"); list.add("test2"); model.put("list", list); ViewExcel viewExcel = new ViewExcel(); return new ModelAndView(viewExcel, model); } }
<xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <display-name>springPDFTestdisplay-name> <servlet> <servlet-name>springPDFTestservlet-name> <servlet-class> org.springframework.web.servlet.DispatcherServlet <servlet-class> <load-on-startup>1load-on-startup> <servlet> <servlet-mapping> <servlet-name>springPDFTestservlet-name> <url-pattern>*.shtmlurl-pattern> <servlet-mapping> <welcome-file-list> <welcome-file>index.jspwelcome-file> <welcome-file-list> <web-app>
3)index.jsp
<a href="viewPDF.shtml">PDF视图打开 a>
<br>
<a href="viewExcel.shtml">Excel视图打开a>
转载自:http://www.iteye.com/topic/26415
发表评论
-
Java反射获取属性
2016-03-21 19:44 973import java.lang.reflect.Field ... -
JetBrains注册码计算(IntelliJ IDEA 15.0注册码激活)
2016-02-01 00:51 936安装前修改时间为2099年等很多年后的时间点,安装后选择免费 ... -
Memcached客户端简介
2014-05-22 11:56 797Memcached客户端性能评测报告 本次memcache ... -
IntelliJ IDEA 的 20 个代码自动完成的特性
2014-04-29 13:43 859在这篇文章中,我想向您展示 IntelliJ IDEA 中最 ... -
Openfire 性能优化
2013-07-26 00:04 1363Openfire 是一个XMPP协议的IM Server ... -
javamd5实例
2013-05-31 11:07 879import java.io.*; import java ... -
网络爬虫之网页更新的判断策略
2012-12-11 09:41 2093摘要:做搜索引擎的时候,网络爬虫(WebSpider)对 ... -
搭建Nexus
2012-12-05 00:43 6351. 首先下载Nexus 从官网htt ... -
从Maven私服获取依赖
2012-12-05 00:23 1078转自:http://blog.csdn.net/shei ... -
创建你的首个Maven项目
2012-12-03 23:56 928要创建你的首个项目,你需要使用Maven的Archet ... -
MyEclipse10.0(Mac)离线下线安装
2012-11-29 22:49 1090离线安装: http://downloads.myeclips ... -
cocosd-android原来是个山寨货
2012-06-13 09:25 9791、技术团队无优势:Cocos2D-Android版本与iPh ... -
正则表达式中问号等特殊字符的转义
2010-11-05 00:09 1628正则表达式中问号等特殊字符的转义 在.NET Framewor ... -
Spring 中 AOP 特性详解
2010-11-02 16:46 1554动态代理的实现原理 ... -
Spring 框架的设计理念与设计模式分析(2)
2010-10-29 14:33 1125如何创建 BeanFactory 工厂 正如图 ... -
Spring 框架的设计理念与设计模式分析(1)
2010-10-29 14:09 1044Spring 的骨骼架构 ... -
删除ie cookie
2010-10-26 11:33 1349Cookie[] cookies = request.g ... -
Spring with Tomcat 中文编码问题的解决方案
2010-10-26 09:55 1309由于各种原因,Java 应用中有关中文编码的问题总是层出不穷, ... -
MyEclipse 8.5 优化实例
2010-10-21 21:26 1689第一步: 取消自动validationvalidation ... -
cookie共享(单点登录)
2010-10-13 17:59 1135正常的cookie只能在一个应用中共享,即一个cooki ...
相关推荐
这个例子展示了如何使用 Spring MVC 和相关的库(Apache POI 和 iText)来动态生成 Excel 和 PDF 文件,提供给用户下载。整个流程涉及到 Spring MVC 的配置、控制器的编写以及与第三方库的集成,实现了从数据到视图...
这篇博文“SpringMVC:生成Excel和PDF”主要探讨了如何在SpringMVC应用中创建并导出两种常见文档格式——Excel和PDF。 Excel是Microsoft Office套件中的一个电子表格程序,而PDF(Portable Document Format)则是一...
本项目是一个基于Spring Boot框架实现的实用工具,用于将Microsoft Office的三种常见文件格式——Word(.docx)、Excel(.xlsx)和PowerPoint(.pptx)转换为PDF格式。这个小Demo提供了完整的功能,无需任何水印,...
在Spring框架中,实现Excel和PDF表格的导出是一项常见的需求,尤其在数据报表和数据分析场景中。本文将详细介绍如何利用Spring MVC来完成这个功能。 首先,我们关注Excel的导出。在提供的代码片段中,可以看到使用...
这两个依赖分别用于处理低级别(如HSSF)和高级别(如XSSF,适用于Excel 2007及以上版本)的Excel文件。 接下来,我们创建一个名为`ExcelFormatUtil`的工具类,这个类主要负责对单元格的数据格式进行判断,并返回...
在Spring Boot中,我们可以创建一个服务,该服务接受Word模板文件和数据,然后使用POI API将数据填入模板中的占位符,最后生成一个新的Word文档。 对于PDF文件的处理,我们可以使用iText库。iText是一个强大的PDF...
在Java中,可以使用Apache POI库来操作Excel文件,iText库来生成PDF文件。 导出Excel功能通常涉及到读取数据源,如数据库或文件,然后将数据填充到Excel工作表中。而导出PDF则需要将HTML、文本或图像转换成PDF格式...
标题中的“完美整合框架包”指的是一个集合了多个核心Java技术的综合应用,这些技术包括Spring、SpringMVC、MyBatis以及相关的辅助功能,如文件上传下载、邮件服务、短信支持、PDF和Excel的生成。这个框架整合的目的...
Excel提供了丰富的表格和数据分析工具,而PDF则常用于保证文件在不同设备上的显示一致性。 另一个标签 "Excel PDF" 表明了转换的目标格式。PDF(Portable Document Format)是一种通用的文件格式,能够保留原始文档...
生成Word、PDF和Excel文件则涉及不同的技术栈。对于Word,我们可以利用`python-docx`(Python)或Apache POI(Java)等库,它们允许我们操作Word文档的各个元素,如段落、表格、图片等。PDF生成通常有多种选择,如...
- **easypoi-base**: 导入导出包,是核心功能所在,它提供了数据和Excel文件互相转换的核心实现。 - **easypoi-web**: 这个包提供了与Spring MVC整合的视图工具,简化了在Spring Web环境下进行导出的操作,但非必须...
Struts、Hibernate、Spring、JFreeChart以及Excel和PDF导出是Java开发中常见的技术,它们在企业级应用开发中有着广泛的应用。这些技术的整合能够构建出功能强大的Web应用程序,提供数据展示、数据处理以及文件导出等...
7. **PDF文档操作**:除了创建,OpenPDF还能读取和修改已存在的PDF文件,比如添加、删除、移动页面,或者合并多个PDF文件。 8. **事件处理**:开发者可以通过注册监听器来处理PDF生成过程中的各种事件,如页眉页脚...
通过它,开发者可以创建新的工作簿,添加工作表,设置单元格值,样式,公式等,实现从程序中动态生成Excel报表。 6. **导出PDF**:PDF(Portable Document Format)是一种通用的文件格式,常用于保存文档的原始布局...
在Java编程中,导出Excel、Word和PDF是常见...总之,Java通过各种库如Apache POI和iText提供了强大的能力来处理Excel、Word和PDF文件的导出。理解并熟练运用这些库,可以帮助你实现高效的数据导出功能,满足业务需求。
它提供了强大的功能,能够方便地进行Excel、Word和PDF文件的导出操作,支持大数据量的导出、模板导出以及多种格式的转换。 ## 项目的主要特性和功能 ### Excel导出 Excel导出支持常规Excel导出、大数据量导出、...
在本文档中,我们将深入探讨如何使用Java技术栈实现导出Excel文件的功能...以上知识点涵盖了从Java后端文件生成、数据处理到前端页面触发和下载文件的整个过程,展现了在Java技术栈中实现Excel文件导出功能的技术细节。
这个项目结合了Spring Boot的Web开发能力、Java的文件处理和二维码生成技术,以及前端的交互设计,是一个综合性的实践案例,有助于开发者提升在这些领域的技能。通过学习和实践,开发者可以更好地理解如何将这些技术...