历史版本14 :保存模板至数据库 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 描述编辑

应用场景:若您是政府部门等,您制作的模板 cpt 文件放在硬盘中,如果硬盘遇上意外,导致 cpt 文件丢失,后果会很严重。

功能介绍:为了降低这个风险,我们可将确认无误的 cpt 文件全部保存在数据库中( cpt 文件即二进制数据),这样您若是硬盘遇上意外导致 cpt 文件丢失,也可以在查看时再将这些 cpt 文件(即二进制数据)从数据库中提取,从而避免发生重大损失。

如下可查看,这里是已经将已有的 cpt 模板保存于 MySQL 数据库中,点击我们的报表数据集,数据库查询>数据库数据集,输入 SELECT * FROM REPORT,预览可看到:

222

那么,如何将 cpt 模板保存入库呢?以下我们详细介绍。


2. 实现步骤编辑

2.1 数据库表准备

数据库中先建好一张 report 的表,表中包含两个字段 cptname (字符串型)和 cpt (Blob 类型)。


222

2.2 编写保存模板程序

注意需要引入 FineReport 设计器下的 JAR 包,详细点击 Eclipse中启动设计器

详细代码如下所示:

https://git.fanruan.com/demo/example/src/release/10.0/src/main/java/com/fr/io/SaveReportToDatabase.java

注:该程序中使用了 JDBC 连接数据库,您需要在编写代码前先将对应数据库的驱动包加载进 project 中。

另:代码中需要根据你实际的报表环境路径和数据库进行修改。

另:如果数据库大小写不敏感即不区分大小写,代码无需修改;如果数据库区分大小写,则需要将表名需要加双引号,修改后 insert into \"report\" values(?,?)


3. 编译运行编辑

运行编译好的程序,重新查看数据库中数据,便可以看到您新增的记录了。