[FineReport]安装与使用(连接Hive3.1.2)

news/2025/3/15 19:20:25/

一、安装(对应hive3.1.2)

注:服务器的和本地的要同时安装。本地是测试环境,服务器的是生产环境

1、服务器安装

1、下载

免费下载FineReport - FineReport报表官网

向下滑找到

2、解压

[root@ck1 /home/data_warehouse/software]# tar -zxvf tomcat-linux.tar.gz -C ../module/
[root@ck1 /home/data_warehouse/module]# chmod 777 tomcat-linux

3、在home/data_warehouse/module/tomcat/webapps/webroot/WEB-INF/lib下加入下载的包

[平台]Hadoop Hive数据连接- FineReport帮助文档 - 全面的报表使用教程和学习资料

解压,把里头的jar全放进去(这个适用Hive2版本的包,对于Hive3也是好用的)

4、配置文件

[root@ck1 /home/data_warehouse/module/tomcat/conf]# vim server.xml 

第40行,改一下端口 

5、启动

[root@ck1 /home/data_warehouse/module/tomcat/bin]# ./startup.sh 

查看服务器日志

[root@ck1 /home/data_warehouse/module/tomcat/logs]# tail -200f catalina.out

注:停止:shutdown.sh

6、初始化

访问并设置密码 http://ck1:2333/webroot/decision

选择内置数据库即可

7、创建hive连接

测一下,通了就可以了 。记得保存

2、本地安装

1、安装

免费下载FineReport - FineReport报表官网

向下翻

2、Hive驱动,下载这个

[平台]Hadoop Hive数据连接- FineReport帮助文档 - 全面的报表使用教程和学习资料

 放到这里就行了

3、连接hive 

使用的是这个app

创建链接

二、使用(在服务器上查数据)

需求:我有一张表dws.dws_news_aggre这表有21列,我想这个21列全展示出来,并且仅展示10000条。并对其中的19列做一个查询框,方便查询。

1、在客户端处理

1、添加数据集

select * from dws.dws_news_aggre 
where 1 = 1
${IF(len(股票代码)=0,"","AND scode = '" + 股票代码 + "'")}
${IF(len(公司简称)=0,"","AND coname = '" + 公司简称 + "'")}
${IF(len(行业名称)=0,"","AND industry = '" + 行业名称 + "'")}
${IF(len(行业代码)=0,"","AND indcode = '" + 行业代码 + "'")}
${IF(len(新闻ID)=0,"","AND newsid = '" + 新闻ID + "'")}
${IF(len(报道时间)=0,"","AND reptime = '" + 报道时间 + "'")}
${IF(len(报道媒体)=0,"","AND repmedia = '" + 报道媒体 + "'")}
${IF(len(报道媒体所在地区mediarea)=0,"","AND mediarea = '" + 报道媒体所在地区 + "'")}
${IF(len(来源媒体)=0,"","AND sourcemed = '" + 来源媒体 + "'")}
${IF(len(新闻情感)=0,"","AND newsemot = '" + 新闻情感 + "'")}
${IF(len(是否原创)=0,"","AND orirep_dum = '" + 是否原创 + "'")}
${IF(len(采集网址)=0,"","AND url = '" + 采集网址 + "'")}
${IF(len(正文句子数)=0,"","AND senten_num = '" + 正文句子数 + "'")}
${IF(len(标题是否提及)=0,"","AND title_mentioned = '" + 标题是否提及 + "'")}
${IF(len(正文提及句子数)=0,"","AND codesent_num = '" + 正文提及句子数 + "'")}
${IF(len(正文提及次数)=0,"","AND codecontent_num = '" + 正文提及次数 + "'")}
${IF(len(company_num提及全部公司数)=0,"","AND company_num = '" + 提及全部公司数 + "'")}
${IF(len(提及全部公司句子数)=0,"","AND allcodesent_num = '" + 提及全部公司句子数 + "'")}
${IF(len(全部公司提及次数)=0,"","AND allcode_content_num = '" + 全部公司提及次数 + "'")}
${IF(len(来源)=0,"","AND 来源 = '" + 来源 + "'")}
limit 10000说明:
${IF(len(股票代码)=0,"","AND scode = '" + 股票代码 + "'")}
股票代码为字段scode显示的中文名
这句其实是
if(len(scode)=0,"",scode) +"'"是字符串拼接一个单引号

字符串需要拼接单引号(我的这些字段全是字符串类型的),数值类型的则不需要 

 选择确定

2、把数据放到表格上展示

1)用鼠标选中第一列,按住shitf再选中最后一列

2)拖进来

选择从左到右

3、调整 

1)原来是group by ,该成汇总(展示明细)

单击第一列

调整为汇总

2)添加边框

3)添加表头:在行首添加一行,填写表头名即可

4)设置固定行高,不然会很丑

5)设置一页显示所有列

如果这样不行的话,就

6)调整颜色

7)预览一下

4、导入筛选文本框

编辑

点击全部添加 

编辑为文本框,选中扳手,再选择第一个空的

可以通过圈选和拖动调节位置!

2、在服务器展示

1、放客户端生成的文件

把客户端做好的以.cpt为后缀的文件传到服务器的:

/home/data_warehouse/module/tomcat_bak/webapps/webroot/WEB-INF/reportlets目录下

2、添加到服务器

可以了!


http://www.ppmy.cn/news/1128987.html

相关文章

只是因为上了那个网站,就被公安局没收百万财产!

事件简介 9 月 24 日,有人在某社交网站发文称其为境外公司提供工作,访问国际互联网,被河北承德双桥公安处罚 105.8 万元,国庆之后在当地提起行政诉讼,并寻求律师的帮助: 这篇帖子一经发出,就引…

刘强东再次拿起低价武器,杀入这个万亿市场

京东的低价策略也要在汽车后市场打起来了? 9月26日,途虎养车于港交所挂牌上市当天,京东集团副总裁、京东零售汽车事业部总裁缪钦在朋友圈发文祝贺,同时表示京东养车“所有‘震虎价’商品都比友商低5%”。贺词与战书,同…

中秋特辑——3D动态礼盒贺卡(可监听鼠标移动)

前言 「作者主页」:雪碧有白泡泡 「个人网站」:雪碧的个人网站 「推荐专栏」: ★java一站式服务 ★ ★ React从入门到精通★ ★前端炫酷代码分享 ★ ★ 从0到英雄,vue成神之路★ ★ uniapp-从构建到提升★ ★ 从0到英雄&#xff…

Windows下使用pybind11教程(python调用C++代码)

1. 下载pybind11 gittub中下载,pybind下载后解压 2. C生成库文件 2.1.VS新建空白工程,工程名随意起 - 2.2更改目标文件名和配置类型 - 2.3更改目标文件拓展名 2.4添加include路径和库路径 包含目录中添加刚刚下载好的pybind的include路径以及pyhon的…

将labelme的红色标签改成白色

import numpy as np import os from PIL import Image np.set_printoptions(thresholdnp.inf) 这个函数用于将红色标签图转为白的的标签(其实红色的标签表示灰度值为1(也是只有一个通道)),但不知道为何会显示出红色 def RedToW…

LeetCode算法二叉树—226. 翻转二叉树

目录 226. 翻转二叉树 代码: 运行结果: 给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。 示例 1: 输入:root [4,2,7,1,3,6,9] 输出:[4,7,2,9,6,3,1]示例 2: 输入…

英语——分享篇——每日100词——501-600

hill——will愿意——他不愿意去小山里 Easter——east东方(熟词)er儿(拼音)——东方的儿子都过复活节 exhibition——ex前夫(熟词)hi嗨(熟词)bition比神(谐音)——展览会上前夫很嗨,比神还开心 chase——vt.追捕,追逐,追赶——cha茶se色——…

DevSecOps 将会嵌入 DevOps

通常人们在一个项目行将结束时才会考虑到安全,这么做会导致很多问题;将安全融入到DevOps的工作流中已产生了积极结果。 DevSecOps:安全正当时 一直以来,开发人员在构建软件时认为功能需求优先于安全。虽然安全编码实践起着重要作…