如何打开jsp文件 jsp怎么转换成pdf

  今天,楚明给大家整理一些如何打开jsp文件 jsp怎么转换成pdf内容,让我们花点时间看看吧!

  商用报表工具大部分都提供这个功能,应用中可以通过集成报表工具来获取相应的能力

  我们就以润乾报表为例来看一下如何在应用中添加通用查询功能

  为什么以润乾报表为例呢,因为润乾报表 3 高! 专业报表 20 年,功能好,手艺高;用的人多,市场占有率高;价格低、性价比高

  整体说明润乾通用查询页面由通用查询模块(上半部分) 和报表模块(下半部分) 两个独立部分组合而成

  ) 通用查询模块(上半部分)的核心包括元数据 JSON 和查询 JSON

  如上图中,通用查询模块的左边部分是由 “元数据 Json+ 通用查询标签(commonQuery)”生成,用户拖拽完后生成的右边部分最终会生成“查询 JSON”, 然后报表模块解析后输出报表

  集成步骤1 集成应用包并配置授权把润乾标准的 j2ee 应用包,拷贝到自己的应用目录下

  注意:web.xml 文件不能拷贝,而是打开润乾的 web.xml 文件,把其中的内容拷贝到您的 web.xml 文件中并按要求的顺序合并

  打开 [WEB 应用根目录]

  /WEB-INF/raqsoftConfig.xml 文件,配置授权和数据源信息

  分别在安装目录下找到以下三个 jsp 文件,后续步骤会陆续用到这些文件,

  1、通用查询页面 cqIndex.jsp(路径:demo

aqsoftguidejsp);

  2、查询模块页面 cq.jsp(路径:demo

aqsoftguidejsp)

  3、报表模块页面 cqReport.jsp(路径:demo

eportJsp)

  通用查询页面 (cqIndex.jsp)由查询模块(cq.jsp)和报表模块 (cqReport.jsp) 两部分组成,模块间相互独立,互不影响

  2 准备元数据 JSON 并配置标签元数据 JSON 的生成方式有很多种,本例以使用直接提供 json 字符串为例,初始化通用查询模块

  编辑 cq.jsp,使用 json 字符串生成元数据 JSON:

  String metadata = “[{name:‘group1’,fields:[{name:‘EID’,title:‘员工编号’},{name:‘GENDER’,title:‘性别’},{name:‘SALARY’,title:‘工资’}]}]”;

  然后在 jsp 中定义 Tag 标签raqsoft:commonQuery的属性及其值,用 Tag 标签完成通用查询的解析及运算,按用户配置的属性要求将 HTML 文件流输出到客户端

  3 解析查询 JSON点击查询后会生成一个 json 串,通称查询 JSON,通过集算器脚本(润乾独有的开源计算引擎)解析该 json,然后把结果传递给报表

  示例:新建脚本文件 QueryDS.dfx,内容如下:

  在 cqReport.jsp 中已将查询 json 赋值给了 queryJSON 参数,因此需在集算器脚本中定义名为 queryJSON 的参数,用于接收通用查询返回的查询 json:

  4 制作报表模块展示数据新建报表 Query.rpx,使用上一步的集算器脚本作为数据集,报表模板如下:

  数据集定义:

  参数定义:

  5 发布报表并查看在 cqReport.jsp 中定义报表标签

  然后浏览器中访问通用查询的主页面 cqIndex.jsp

  到此一个完整的通用查询功能就集成完毕了,可以自由定义查询条件了

  拖拽左上角列出的元数据 json 中的指标到右侧,对指标进行查询、汇总、条件过滤等操作,点击查询按钮,结果报表就出来了

  更多的,数据库数据怎么生成 json,动态元数据 json 怎么做,集算器脚本还能做什么,可以参考: 通用查询控件使用方法 - 乾学院

  jsp怎么转换成pdf最近做了一个奇葩的需求,研究了一下Java纯后端生成PDF报表的方案,顺便将研究的方案做个总结复盘,分享一下。

  需求分析:Java后端定时任务统计汇总成报表数据,并生成PDF格式的报表文件,并通过邮件、企业微信等发送给指定接收人。报表界面包含动态文字说明、折线图、饼图、条形图等图表,界面效果和前端生成的界面相同。

  功能难点:前端要生成样式好看的图表比较简单,像Echarts这些前端工具都有现成的功能来完成。但是现在的需求是后端定时任务生成报表文件,报表界面的渲染都必须有后端来完成,由于缺少前端的用户操作动作,也无法在前端生成图表的图片后传到后端来。

  方案一:

  使用FreeMarker+iText生成PDF文件。

  原理和流程:

  FreeMarker是一款模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页、电子邮件、配置文件、源代码等)的通用工具。

  iText是一种生成PDF报表的Java组件。通过在服务器端使用Jsp或JavaBean生成PDF报表,客户端采用超链接显示或下载得到生成的报表,这样就很好的解决了B/S系统的报表处理问题。

  具体的流程如下:

  缺点:这种方案只能生成很简单的Table模板,由于iText对html的要求非常严格,太复杂的界面会报错,所以无法生成Echarts的图表。

  方案二:

  SwingUI+JFreeChart+JFreePDF生成PDF文件

  这里JFreeChart和JFreePDF都是maven依赖包

  JFreeChart是Java客户端应用的一个界面组件,在SwingUI上画出图表控件。

  JFreePDF是能将JPanel面板截屏生成PDF的插件。

  流程和原理:

  缺点:

  由于是将JPanel截屏生成的PDF。所以界面样式上比较难看,比不上前端界面生成的报表页面。

  而且JFreePDF这个maven依赖的插件是基于JDK11开发的,如果要兼容JDK8,就要到github上将源码下载下来,自己编译生成一个兼容JDK8的依赖包。

  方案三:(最终采用方案)

  使用wkhtmltopdf+静态html界面生成pdf界面

  wkhtmltopdf是一个将静态html网页截屏生成pdf文件的工具,Linux、Mac、Windows各个操作系统的版本都有。只需要输入目标网页的URL就能将网页完成的导出PDF文件。

  1.在操作系统安装wkhtmltopdf工具

  2.前端编码html+jquery+echarts的纯静态页面,由于wkhtmltopdf工具使用内置的WebKit内核版本较低,所以不兼容太新的js语言,像VueJS这些最新的框架就无法使用这个工具。目前测试的能够兼容的echarts版本是4.2.1.

  3.调用wkhtmltopdf命令输入静态网页地址生成pdf文件。

  之前为了调试网页写了一个Java桌面应用来调用wkhtmltopdf工具生成pdf。

  github地址:

  1.需要在服务器系统中先安装wkhtmltopdf工具;

  2.只能单独开发一个纯静态的html页面来生成报表

  优点:

  界面美观,因为是直接截取html网页,所以和前端生成的图表样式一样。

  开发量最小。

  如果大家喜欢如何打开jsp文件 jsp怎么转换成pdf,欢迎大家收藏!

本文有网友:蛋花贡献,如若转载,请注明出处:https://weichuming.com/w/82175.html

生活网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。本站非盈利且无偿提供信息存储空间服务,不拥有所有权,如有文章有不实信息或侵犯了您的权益,请邮件weichuming@126.com反馈核实。

(0)
上一篇 2024-01-14
下一篇 2024-01-14

相关推荐

  • 金鱼草一年开几次花

    很多人不清楚金鱼草一年开几次花吧!?那么接下来我们就来给大家讲解一下金鱼草一年开几次花的内容吧!   鱼嘴吊兰即金鱼吊兰,因为花朵金黄色,像正张嘴游弋的大肚子金鱼而得名,它属于苦苣...

    2023-06-12
  • 铁杵成针告诉我们什么道理

      今天楚明来为大家回答铁杵成针告诉我们什么道理,现在让我们一起看看!   出自宋代祝穆《铁杵成针》,原文:   磨针溪,在象耳山下。世传李太白读书山中,未成,弃去。过是溪,逢老媪...

    2023-09-27
  • 天猫淘宝网商城

      网友好,楚明来为大家解决天猫淘宝网商城问题,今日让我们一起看看吧!   天猫商城和淘宝网有什么区别?具体有哪些区别? 天猫和淘宝的相同之处是都是阿里巴巴旗下的购物网站。天猫也叫...

    2023-11-10
  • 对谁说一声感谢

      今天楚明来为大家回答对谁说一声感谢,现在让我们一起看看!   现在热播中的《青春期撞上更年期 2》的片尾曲叫什么名字,是谁演唱的? 结尾曲:《对谁说一声感谢》   演唱:于嘉萌...

    2023-11-16
  • 二月兰怎么种植

    今天我们就一起了解下二月兰怎么种植,看看有没有你不知道的知识?一起涨知识啊~   二月兰是一年生或者两年生草本植物,高可达50厘米。说起来二月兰就是一种野花野菜,作为一种观赏花卉和...

    2023-08-11
  • 英国面积与人口

      关于英国面积与人口问题,今日,楚明抽点时间整理一些答案,一起看看吧!   英国是一个高度发达的资本主义国家,欧洲四大经济体之一,其国民拥有极高的生活水平和良好的社会保障体系。英...

    2023-11-02
  • 苹果手机屏幕亮度总是自己变暗

      今天楚明来为大家回答苹果手机屏幕亮度总是自己变暗,现在让我们一起看看!   在使用iphone的时候,你有没有遇到过这样的情况,关闭了自动光感应调节亮度,手机屏幕依然会忽然变暗...

    2023-03-13
  • 沈括的代表作是什么作品

    很多人不清楚沈括的代表作是什么作品吧!?那么接下来我们就来给大家讲解一下沈括的代表作是什么作品的内容吧!   沈括的官宦生涯是什么样的?著作有哪些?他总结了什么认识论?   沈括(...

    2023-08-18
  • 网络适配器里找不到无线网卡

      今天,楚明给大家整理一些网络适配器里找不到无线网卡内容,让我们花点时间看看吧! 解决笔记本电脑设备里无法站到网络适配器,需要安装相关驱动。   以驱动精灵为例,安装无线网卡驱动...

    2024-01-01
  • 什么是老实人

    什么是老实人什么是老实人?在现实生活中,每个人的性格都是不太一样的,有的人就是我们常说的老实人,现在老实人都成为一个不好的代名词了。接下来就由小编带大家了解什么是老实人的相关内容。什么是老实人1老实不是平庸和无能的代名词,老实更多的是指在生活中遵守规矩的人,在生活中勤勤恳恳,脚踏实地的人,与人为善待人处事真诚的人,忠厚老实的人,在思想情操上有着高尚的人,这样的人我们才会称之为老实人。一、老实人

    2022-07-11