- Spring MVC概述
- Spring MVC - Hello World示例
- 表单处理
- 表单标签库
- 处理映射
- 控制器
- 视图解析器
- 集成
-
高级应用部分
- Spring4 MVC HelloWord实例
- Spring4 MVC HelloWorld 注解和JavaConfig实例
- Spring4 MVC表单验证
- Spring4 MVC ContentNegotiatingViewResolver多种输出格式实例
- Spring4 MVC REST服务使用@RestController实例
- Spring4 MVC+ AngularJS CRUD使用$http实例
- Spring4 MVC RESTFul WebServices CRUD实例+RestTemplate
- Spring4 MVC+Hibernate4+MySQL+Maven使用注解集成实例
- Spring4 MVC+Hibernate4 Many-to-many连接表+MySQL+Maven实例
- Spring4 MVC文件下载实例
- Spring MVC4使用Servlet3 MultiPartConfigElement文件上传实例
- Spring MVC配置静态资源和资源包教程
- Spring MVC文件上传教程
Spring MVC生成PDF文件
以下示例演示如何使用Spring Web MVC框架生成PDF格式的文件。首先使用Eclipse IDE,并按照以下步骤使用Spring Web Framework开发基于动态表单的Web应用程序:
- 创建一个名称为 GeneratePdf 的动态WEB项目。
- 在
com.zyiz.springmvc
包下创建三个Java类:UserPDFView
和PDFController
。 - 从maven存储库页面下载Apache iText库:Apache iText。 把它放在
CLASSPATH
中。 - 最后一步是创建所有源和配置文件的内容并运行应用程序,详细如下所述。
完整的项目文件目录结构如下所示 -
PDFController.java 的代码如下所示 -
package com.zyiz.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 { @Override protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response) throws Exception { //user data Map<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.zyiz.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.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd"> <bean class="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping" /> <bean class="com.zyiz.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.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd"> <bean id="UserSummary" class="com.zyiz.springmvc.UserPDFView"></bean> </beans>
在上面的代码中,创建了一个PDFController
和UserPDFView
类。iText
库是用来处理PDF文件格式,并将数据转换为PDF
文档。
完成创建源和配置文件后,发布应用程序到Tomcat服务器。
现在启动Tomcat服务器,当访问URL => http://localhost:8080/GeneratePdf/pdf , 如果Spring Web应用程序没有问题,应该看到以下结果:
分类导航
- Java教程
- Vim教程
- Swing教程
- Spring教程
- Spring Web Services教程
- Spring MVC教程
- Spring JDBC教程
- Spring Cloud教程
- Spring Boot教程
- Spring Boot CLI教程
- Spring Batch教程
- Spring AOP教程
- PDFBox教程
- JSP教程
- JSF教程
- JPA教程
- Java面向对象设计
- Java设计模式
- Java虚拟机教程
- Java泛型教程
- Java正则表达式教程
- Java数据类型教程
- Java并发编程教程
- Java密码学教程
- Java多线程教程
- Java国际化(i18n)教程
- JavaFX教程
- Java9教程
关注微信小程序
扫描二维码
程序员编程王