以下示例演示如何使用Spring Web MVC框架生成PDF格式的文件。首先使用Eclipse IDE,并按照以下步骤使用Spring Web Framework开发基于动态表单的Web应用程序:

  1. 创建一个名称为 GeneratePdf 的动态WEB项目。
  2. com.yiibai.springmvc 包下创建三个Java类:UserPDFViewPDFController
  3. 从maven存储库页面下载Apache iText库:Apache iText。 把它放在CLASSPATH中。
  4. 最后一步是创建所有源和配置文件的内容并运行应用程序,详细如下所述。

完整的项目文件目录结构如下所示 -

PDFController.java 的代码如下所示 -

package com.yiibai.springmvc;
import java.util.HashMap;
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.AbstractController;public class PDFController extends AbstractController {@Overrideprotected ModelAndView handleRequestInternal(HttpServletRequest request,HttpServletResponse response) throws Exception {//user dataMap<String,String> userData = new HashMap<String,String>();userData.put("100", "Xiao.Lu");userData.put("102", "User 102");userData.put("301", "User 301");userData.put("400", "User 400");return new ModelAndView("UserSummary","userData",userData);}
}

UserPDFView.java 的代码如下所示 -

package com.yiibai.springmvc;
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.Table;
import com.lowagie.text.pdf.PdfWriter;public class UserPDFView extends AbstractPdfView {protected void buildPdfDocument(Map<String, Object> model, Document document,PdfWriter pdfWriter, HttpServletRequest request, HttpServletResponse response)throws Exception {Map<String,String> userData = (Map<String,String>) model.get("userData");Table table = new Table(2);table.addCell("No.");table.addCell("User Name");for (Map.Entry<String, String> entry : userData.entrySet()) {table.addCell(entry.getKey());table.addCell(entry.getValue());}document.add(table);}
}

GeneratePdf-servlet.xml 配置如下所示 -

<beans xmlns="http://www.springframework.org/schema/beans"xmlns:context="http://www.springframework.org/schema/context"   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:mvc="http://www.springframework.org/schema/mvc"xsi:schemaLocation="http://www.springframework.org/schema/beans     http://www.springframework.org/schema/beans/spring-beans-3.0.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsdhttp://www.springframework.org/schema/mvchttp://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd"><beanclass="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping" /><bean class="com.yiibai.springmvc.PDFController" /><bean class="org.springframework.web.servlet.view.XmlViewResolver"><property name="location"><value>/WEB-INF/views.xml</value></property></bean>
</beans>

views.xml 文件中的配置如下所示 -

<beans xmlns="http://www.springframework.org/schema/beans"xmlns:context="http://www.springframework.org/schema/context"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beans     http://www.springframework.org/schema/beans/spring-beans-3.0.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd"><bean id="UserSummary" class="com.yiibai.springmvc.UserPDFView"></bean>
</beans>

在上面的代码中,创建了一个PDFControllerUserPDFView类。iText库是用来处理PDF文件格式,并将数据转换为PDF文档。

完成创建源和配置文件后,发布应用程序到Tomcat服务器。

现在启动Tomcat服务器,当访问URL => http://localhost:8080/GeneratePdf/pdf , 如果Spring Web应用程序没有问题,应该看到以下结果:

原文出自【易百教程】,商业转载请联系作者获得授权,非商业转载请保留原文链接:https://www.yiibai.com/spring_mvc/springmvc_excel.html

Spring MVC生成PDF文件代码示例相关推荐

  1. [itext]Java生成PDF文件

    一.前言 最近在做也导出试卷的功能,刚开始是导出为doc,可是导出来格式都有变化,最后说直接将word转为pdf,可是各种不稳定,各种报错.最后想到直接将文件写入pdf(参考:http://www.c ...

  2. Java生成PDF文件,java面试题,java初级笔试题

    写在最前面,我总结出了很多互联网公司的面试题及答案,并整理成了文档,以及各种学习的进阶学习资料,免费分享给大家.扫码加微信好友进[程序员面试学习交流群],免费领取.也欢迎各位一起在群里探讨技术. 一. ...

  3. Java生成PDF文件_自用

    Java生成PDF文件 一.前言 前几天,做ASN条码收货模块,需要实现打印下载收货报表,经一番查找,选定iText--用于生成PDF文档的一个Java类库.废话不多说,进入正题. 二.iText简介 ...

  4. java图片转换pdf_Java实现图片转换PDF文件的示例代码

    最近因为一些事情,需要将一张简单的图片转换为PDF的文件格式,在网上找了一些工具,但是这些工具不是需要注册账号,就是需要下载软件. 而对于只是转换一张图片的情况下,这些操作显然是非常繁琐的,所以作者就 ...

  5. java实现生成PDF文件

    1.PDF文件简介 PDF是可移植文档格式,是一种电子文件格式,具有许多其他电子文档格式无法相比的优点.PDF文件格式可以将文字.字型.格式.颜色及独立于设备和分辨率的图形图像等封装在一个文件中.该格 ...

  6. Spring MVC上传文件原理和resolveLazily说明

    问题:使用Spring MVC上传大文件,发现从页面提交,到进入后台controller,时间很长.怀疑是文件上传完成后,才进入.由于在HTTP首部自定义了"Token"字段用于权 ...

  7. Spring MVC Hibernate MySQL集成CRUD示例教程

    Spring MVC Hibernate MySQL集成CRUD示例教程 我们在上一篇教程中学习了如何集成Spring和Hibernate.今天,我们将继续前进,并将Spring MVC和Hibern ...

  8. 生成PDF文件方案--学习中

    PDF文件是目前比较流行的电子文档格式,在办公自动化(OA)等软件的开发中,经常要用到该格式,但介绍如何制作PDF格式文件的资料非常少,在网上搜来搜去,都转贴的是同一段"暴力"破解 ...

  9. Java生成PDF文件(Itext篇)

    在企业的信息系统中,报表处理一直占比较重要的作用,iText是一种生成PDF报表的Java组件.通过在服务器端使用Jsp或JavaBean生成PDF报表,客户端采用超链接显示或下载得到生成的报表,这样 ...

最新文章

  1. 华为秘密作战计划曝光,重注研发AI芯片挑战英伟达,轮值董事长挂帅
  2. [转]Linux 微擎系统搭建
  3. 管人、管团队、管项目,如何让团队管理者成为技术团队中的发动机?
  4. php-5.6.26源代码 - opcode处理器,“函数调用opcode”处理器,如何调用扩展模块的函数...
  5. 基于深度学习模型WideDeep的推荐
  6. 一维数组和指针的关系
  7. 接口进阶 java 1614956772
  8. TPT:中科院等提出用于VideoQA的跨模态交互时间金字塔Transformer
  9. opencv 亮度非线性变化 一
  10. android 图片上传java,php服务器
  11. 【问答】开放领域问答梳理(2)
  12. python visa模块_python – Mac OS X上的NI VISA pyVisa(Snow Leopard)
  13. CodeForces - 1152 B. Neko Performs Cat Furrier Transform
  14. 霍尼韦尔和陕西西咸新区签订投资战略协议;雀巢专业餐饮成都客户交流体验中心落成 | 美通企业日报...
  15. 盘点5大高频移动端场景,你不会用就落后了(内附模板下载)
  16. 从化区委刘棕会访从玉农业 林裕豪:再入大湾区菜篮子工程
  17. 2017——新的开始,加油!
  18. 微信小程序云开发支付
  19. vsm java_向量空间模型(VSM)在文档相似度计算上的简单介绍
  20. bcrypt加密和sha256加密

热门文章

  1. 【机器学习基础】数学推导+纯Python实现机器学习算法19:PCA降维
  2. 一文看尽7篇目标跟踪最新论文(ABCTracker/MAST/L1DPF-M等)
  3. 第16讲:ODBCJDBC简介
  4. Python--day46--MySQL视图
  5. Extjs grid选中一条记录Ajax访问后台
  6. [译] 理解编译器 —— 从人类的角度(版本 2)
  7. 第十三章:位图(五)
  8. javascript返回上一页的三种写法
  9. springboot ftp 笔记
  10. linux 安装tomcat 权限不足问题