Spring Boot集成JasperReport生成文档

由于工作需要,要实现后端根据模板动态填充数据生成PDF文档,通过技术选型,使用Ireport5.6来设计模板,结合JasperReports5.6工具库来调用渲染生成PDF文档。

一、使用Ireport designer 5.6设计模板

ireport的使用由于时间关系不便多说,设计好之后,将其进行编译生成jasper文件,然后将其拷贝放置于项目jasper目录下,以供访问获取该文件。

二、在Spring Boot项目中引入依赖包

复制代码
<!-- jasperreports-->
<dependency>
    <groupId>net.sf.jasperreports</groupId>
    <artifactId>jasperreports</artifactId>
    <version>6.0.0</version>
</dependency>
<dependency>
    <groupId>net.sf.jasperreports</groupId>
    <artifactId>jasperreports-fonts</artifactId>
    <version>6.0.0</version>
</dependency>
<dependency>
    <groupId>com.itextpdf</groupId>
    <artifactId>itextpdf</artifactId>
    <version>5.5.0</version>
</dependency>
<dependency>
    <groupId>com.itextpdf</groupId>
    <artifactId>itext-pdfa</artifactId>
    <version>5.5.0</version>
</dependency>
<dependency>
    <groupId>com.itextpdf</groupId>
    <artifactId>itext-asian</artifactId>
    <version>5.2.0</version>
</dependency>
<dependency>
    <groupId>org.codehaus.groovy</groupId>
    <artifactId>groovy-all</artifactId>
    <version>2.4.11</version>
</dependency>

三、自定义spring mvc通用导出PDF视图类PdfReportView(继承自AbstractView )

四、spring mvc调用案例

五、解决linux下宋体渲染问题

1、在src/main/resources路径下新建jasperreports_extension.properties文件,内容如下:

2、在src/main/resources路径下新建fonts目录,并新建fonts.xml文件

3、在src/main/resources/fonts目录放入宋体字体文件 simsun.ttf

4、线上(linux环境)预览效果如下:

如若转载,请注明出处:开源字节 https://sourcebyte.vip/article/335.html

相关推荐
后端AI实验室2 分钟前
等保三级整改,敏感数据加密,数十个系统——3个人用Cursor一周搞定了
java·ai
qq_334060214 分钟前
spring_springmvc_mybatis权限控制+boostrap实现UI
java·spring·mybatis
工边页字9 分钟前
AI公司面试100%加分的话题:如何做 API成本预算
前端·后端·面试
sunwenjian8869 分钟前
Spring Boot 整合 Druid 并开启监控
java·spring boot·后端
Java编程爱好者12 分钟前
阿里面试官:什么才是可工程化落地的RAG项目
后端
1104.北光c°15 分钟前
基于Canal + Kafka的高可用关注系统:一主多从关系链
java·开发语言·笔记·分布式·程序人生·kafka·一主多从
Mem0rin16 分钟前
[Java]异常及其处理
java·开发语言
skiy17 分钟前
Spring boot创建时常用的依赖
java·spring boot·后端
码路星河18 分钟前
SpringBoot3 动态扩展实战:不重启服务,轻松插拔业务模块
spring boot
早起的年轻人19 分钟前
告别Git仓库臃肿:一招解决Maven target目录误提交问题
java·git·maven