finereport 简单使用
finereport使用
- finereport的集成方式与部署方式
- finereport的数据集简单操作
- 程序数据集
- 数据库数据集
- finereport模版文件展示
- finereport设计器操作
finereport的集成方式与部署方式
- 独立部署
- 直接使用finereport服务器提供的部署tomcat进行部署
- 优点:独立部署,不影响其他项目的使用,解耦。独立操作所有模版进行分配。
- 缺点:程序数据集,等大数据操作时,需要在此引入finereport的jar包进行开发。
- 直接使用finereport服务器提供的部署tomcat进行部署
- 集成到web项项目
- servlet/spring项目,可将web-info/lib下的jar复制到本身项目中,并把tools.jar(jdk下的文件)复制到本身项目lib中即可。
- springboot项目,目前集成只能jar启动方式,改成war包的启动方式进行部署启动。
- 手动新建webapp目录
- 将finerepot项目webapp目录下的文件copy到项目中新建的webapp目录
- 将jdk中的tools.jar复制到lib目录
- 在tomcat catlinna.sh配置tools.jar的访问路径
- 缺点:整个项目很大可能会1-2个g的大小。
finereport的数据集简单操作
- 在官网下载finereport v10设计器 ,进行安装。
finereport模版开发教程
- 视频教程(p4,p5,p6即可):https://www.bilibili.com/video/BV1YJ411w7JK?p=12&spm_id_from=333.880.my_history.page.click
程序数据集
FineReport 是通过 AbstractTableData 抽象类来读取数据源的,所有的数据来源都继承实现其抽象方法。因此用户只要实现了 AbstractTableData 抽象类,就可以用自定义类型的数据源,FineReport 报表引擎就能够读取定义的数据源作为报表数据源使用。
- 参考:https://bbs.fanruan.com/forum.php?mod=viewthread&tid=67293
整体思路
- 1) 定义数据表结构
- 2)实现 AbstractTableData 抽象类
- 3)将获取到的数据放入到定义的表中
- 4)如果数据连接没有定义,可以自己创造连接
- 5)释放一些资源,将上次查询的结果释放掉
需要的依赖
- %FR_HOME%/lib下的所有的包
- %FR_HOME%/server/lib下的所有包
- %FR_HOME%/webapps/webroot/WEB-INF/lib下的所有包
- JDK 下的的 tools.jar
- 实现AbstractTableData抽象类
package com.fr.data;
import java.util.ArrayList;
import java.util.List;
public class SimpleArrayTableDataDemo extends SimpleTableData {/*** 初始化列头* @return*/@Overridepublic String[] initColumnNames() {return new String[]{"Name", "Score"};}
/*** 加载行列数据* @return*/@Overridepublic List<Object[]> loadData() {ArrayList<Object[]> valueList = new ArrayList();valueList.add(new Object[]{"Alex", 15});valueList.add(new Object[]{"Helly", 22});valueList.add(new Object[]{"Bobby", 99});return valueList;}
- 设计器中直接设置
- 服务器中:SimpleArrayTableDataDemo.class 类文件文件复制到%FR_HOME%webapps/webroot/WEB-INF/classes/com/fr/data工程目录下
- 设计好的报表部署
- 将cpt文件放在reportlets目录下
- 将程序集放入%FR_HOME%webapps/webroot/WEB-INF/classes/com/fr/data
- 数据库连接,直接在web页面新建连接
数据库数据集
服务器配置数据连接
设计器JDBC 数据连接
finereport 简单使用相关推荐
- FineReport简单入门
FineReport报表工具的简单使用:基于FineReport 6.5 第一步:简单制作一个Excel: 1.首先这款报表工具是直接从数据库中取数据,所以我们首先要连接到数据库: 点击 --服务器 ...
- 如何获取url中的参数并传递给iframe中的报表
在使用报表软件时,用户系统左边一般有目录树,点击报表节点就会在右侧网页的iframe中显示出报表,同时点击的时候也会传递一些参数给网页,比如时间和用户信息等.如何使网页中的报表能够获取到传递过来的参数 ...
- 10张精美可视化大屏模板分享,加极简制作攻略!抓紧收藏
这两年随着大数据的发展,数据可视化大屏项目渐渐从原来的政府企事单位逐渐应用到了企业端,从事数据行业这么多年,我也参与过不少大屏项目的开发,也感知到了企业大屏需求的不断变化. 两年前,大家都喜欢用&qu ...
- 教你制作类双十一的可视化大屏
每年双十一,天猫都会在整点时刻直播战绩,可怕的战绩背后,不知道大家是否留意到背后的数据大屏,简直炫吊炸天. 屏幕上不仅实时刷新着数据,更滚动着全球交易记录,用商业智能实时分析交易数据,以淘宝的数据体量 ...
- 上汽通用五菱:搭建质量运营平台,实时预警为汽车制造保驾护航
注:本文为帆软2021数据生产力大赛参赛案例,未经授权禁止转载. 1 公司简介 2002年11月18日,上汽通用五菱汽车股份有限公司(下称SGMW)挂牌成立,公司多年保持国内单一车企销量冠军,积累了超 ...
- Java中request有哪些方法,Java--获取request中所有参数的方法
java获取request中的参数.java解析URL问号后的参数.有时候我们需要从request中获取参数,或者获取拼接在Url后面的参数,有时候一个一个去拿有点麻烦,一起拿出来放在一个map里面需 ...
- 帆软(FineReport)报表学习——一个简单的报表
客户要用帆软做东西,就下载了一个,弄了一些报表出来. 废话不说,走起! 先建立一个数据源连接. 这个Mysql的连接没什么可讲的,就是后面的连接参数需要注意一下,useUnicode=true& ...
- FineReport中如何用JavaScript自定义地图标签
2019独角兽企业重金招聘Python工程师标准>>> 在日常使用地图过程中,通常会遇到地图标签,提示点等显示不满足我们的需求,需要进行JavaScript代码编写. 例如:在使用地 ...
- java报表工具FineReport使用中遇到的常见报错及解决办法(三)
这里写点抛砖引玉,希望大家能把自己整理的问题及解决方法晾出来,Mark一下,利人利己. 出现问题先搜一下文档上有没有,再看看度娘有没有,再看看论坛有没有.有报错要看日志.下面简单罗列下常见的问题,大多 ...
最新文章
- python实现WordCount(第三次作业)
- java %2f_字符串“http%3A%2F%2F”转换成http://详解
- ie浏览器在线使用_全球浏览器5月份市场份额公布!Chrome和Edge浏览器迎来新一轮“撕X”大战...
- 深度探索C++ 对象模型(3)-默认构造函数Default Constructor续
- 超简单的MySQL菜鸟安装教程
- CodeForces 689B	Mike and Shortcuts (bfs or 最短路)
- leetcode 53. 最大子序和(C语言)
- XCTF-Web-高手区-easytornado
- Facebook应用Moments使用C++实现跨平台代码共享
- 【看动漫学编程】程序员在异世界生个娃 第1篇:太极村
- P3703-[SDOI2017]树点涂色【LCT,线段树】
- 现在有一个整数数组,已知一个数出现的次数超过了一半,请用O(n)的复杂度的算法找出这个数...
- pythonista脚本_IPA Installer脚本下载-Pythonista脚本IPA Installer(安装手机ipa文件) - 极光下载站...
- 封装一个帮助类来写文件到android外置存储器上
- 带头节点的链式存储栈基本操作(进栈、出栈、获取栈顶元素)
- python数据分析和数据可视化总结
- 总结:硬盘随机读写与顺序读写的性能差异
- golang中的reflect(反射)
- Android P 网络请求相关总结
- 中国传媒大学计算机课程表,中国传媒大学播本课表.pdf