网站开发主流框架如何在网上推广信用卡

news/2025/9/24 5:18:17/文章来源:
网站开发主流框架,如何在网上推广信用卡,做签证的网站,wordpress slide用JasperReportiReport进行Web报表开发 序言在非常多实际的项目里#xff0c;报表都是当中十分重要的组成部分#xff0c;比如把查询结果以报表的形式呈现出来。这里所提到的报表可不是简单的二维表#xff0c;而是拥有复杂表头的、多维的、能够在执行期从数据库中自己主动读… 用JasperReportiReport进行Web报表开发 序言 在非常多实际的项目里报表都是当中十分重要的组成部分比如把查询结果以报表的形式呈现出来。这里所提到的报表可不是简单的二维表而是拥有复杂表头的、多维的、能够在执行期从数据库中自己主动读取数据、可自己主动分页、拥有丰富的页面元素图片超连接等、支持分组和交叉表、支持打印、最好还能导出到Excel或Word…...汗L。可是显而易见报表功能越强大提供的服务越丰富其复杂度也就越提高所以仅靠石器时代的手工方式生成报表是不能满足须要的。所幸眼下我们所熟知的几款报表工具功能上足够强大并且都附有非常方便的报表生成工具。它们各自是JasperReportiReportBIRTeclipse水晶报表eclipse,JBuiler等等。 之所以提到这三种报表工具首先是由于他们都是开放源代码的CrystalReportForEclipse1.0已经开源了。既然不用考虑费用那在我们的项目中究竟选用哪一个呢对于水晶报表而言尽管其在.Net平台上表现十分抢眼可是在Java平台上多数的实现都是要收费的比如For JBuilder版并且其Eclipse插件的资源消耗十分惊人我的机器配置为P4 3.0512RAM使用“Eclipse3.2水晶报表插件”根本就跑不动。所以我选择了纯Java的报表工具JasperReport与iReport的组合。可是关于JasperReport的文档相对匮乏其官方文档还是要收费的所我希望利用这篇文章展示怎样利用这一强力组合来进行基于Web的报表开发希望能为那些苦于报表的同仁们解决一些实际问题。 本文将火力集中在怎样在Web环境下配置和使用JasperReport报表和报表的导出功能等方面因为在曾经的Blog中我已经写过怎样设计普通的报表所里这里将不再赘述。对于那些主要的操作则留给读者自行体会相信在iReport的帮助下上手会非常快的。 注本文已被《程序猿》收录未经同意不得转载 1     JasperReport简单介绍 2     Web报表开发 2.1      环境设置 2.2      报表预览框架 2.3      使用JNLP技术实现client预览 3     结束语... 24 1   JasperReport简单介绍 JasperReport是一个强大、灵活的报表生成工具能够展示丰富的页面内容并将之转换成PDFHTMLXMLExcel通过POI或JExcelAPI实现和Rtf通过POI实现格式。该库全然由Java写成能够用于在各种Java应用程序包含J2EEWeb应用程序中生成动态内容。它的主要目的是辅助生成面向页面的page oriented准备付诸打印的文档。JasperReport借由定义于XML文档中的report design进行数据组织。这些数据可能来自不同的数据源包含关系型数据库collectionsjava对象数组。通过实现简单的接口用户就能够将report library插入到订制好的数据源中。用JasperReport进行报表开发的步骤例如以下所看到的Version1.0 眼下JasperReport最新的版本号是1.2.7能够到Sourceforg站点下载其整个project及代码。其project文件文件夹下的demo子文件夹中包括非常多定义良好的样例能够实现各种所需功能。鉴于它的文档收费想学习使用JasperReport的话我们也仅仅能以这些demo作为学习资料了。 可是繁琐的XML标记和功能API在提供强大的动态及可扩展开发的同一时候也带来了超高的复杂性在没有免费文档的情况下手工编写报表设计所需的XML文件是极其不明智的。只是正如我们用JBuilder或其它可视化开发工具编写SwingGUI时一样我们能够採用iReport进行可视化的报表设计来避免和可怕的XML文件及实现细节打交道。尽管可能会损失一些动态生成报表的灵活性可是大多数情况下我们仅仅须要静态的设计框架和动态的装填数据而非常少须要动态的报表框架所以和我们所获得的方便相比这些小小的损失简直能够忽略不计了。当然假设确实须要且看到以下的东西你不晕的话自己动手确实能够获得所需的灵活性。 当中的VerticalFilling和HorizontalFilling表示装填数据的顺序。从上图我们能够清楚地看到一个报表的设计主要由PageHeader和报表内容组成报表内容又是由列组成内容既能够是一列也能够是多列还能够是Group。详细的实比例如以下 这些元素究竟在JaserReport的XML设计文件里的定义为何我并不想关心由于这都由iReport负责担心了我们仅仅需轻松的像搭积木一样利用iReport加入各种可视化元素就能够了。相信用过之后你会对iReport爱不释手就像我一样。出于实际须要我会提供一个简单的动态表单的生成框架供各位參考。  2   Web报表开发 现今的环境是Web大行其道一个工具假设不能融入Web功能就无法立足。JasperReport的开发人员显然非常早就意识到了这一点所以在JasperReport1.0曾经就增加了支持Servlet/JSP的能力。也就是说我们能够利用Servlet/JSP将生成好的报表导出成HTML或PDF/RTF/EXCEL格式供预览或导出之用。然而唯一的缺憾在于JasperReport并未提供在client直接打印的功能而除了使用Applet之外我们又不能直接在client显示JRViewer这种预览窗体怎样解决这些问题呢 2.1环境设置 在Servlet/JSP中使用JasperReport无需很多其它的设置仅仅须要将JasperReport所用到的jar包放入project中的WEB-INF/lib文件夹下就可以。在程序执行期Servlet/JSP仅仅需可以正确载入报表文件装填数据并生成JasperPring对象利用我以下给出的导出框架稍加改动就可以生成一个带有HTML/PDF/RTF/EXCEL导出功能以及可将HTML预览进行分页的功能模块。 2.2报表预览框架 %page contentTypetext/html; charsetUTF-8% %page importjavax.servlet.*% % page importnet.sf.jasperreports.engine.* % % page importnet.sf.jasperreports.engine.util.* % % page importnet.sf.jasperreports.engine.export.* % % page importnet.sf.jasperreports.j2ee.servlets.* % % page importjava.util.* % % page importjava.io.* % % JasperPrint jasperPrint (JasperPrint)session.getAttribute(JasperPrint);  session.setAttribute(ImageServlet.DEFAULT_JASPER_PRINT_SESSION_ATTRIBUTE,jasperPrint); String pageTitle (String)session.getAttribute(pageTitle); JRHtmlExporter exporter new JRHtmlExporter(); int pageIndex 0; int lastPageIndex 0; if (jasperPrint.getPages() ! null){ lastPageIndex jasperPrint.getPages().size() - 1; } String pageStr request.getParameter(pageIndex); try{ if( pageStr ! null) pageIndex Integer.parseInt(pageStr); }catch(Exception e){ //e.printStackTrace(); } if (pageIndex 0){ pageIndex 0; } if (pageIndex lastPageIndex){ pageIndex lastPageIndex; } StringBuffer sbuffer new StringBuffer(); exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint); exporter.setParameter(JRExporterParameter.OUTPUT_STRING_BUFFER, sbuffer); exporter.setParameter(JRHtmlExporterParameter.IMAGES_URI, ImageServlet?image); exporter.setParameter(JRExporterParameter.PAGE_INDEX, new Integer(pageIndex)); exporter.setParameter(JRHtmlExporterParameter.HTML_HEADER, ); exporter.setParameter(JRHtmlExporterParameter.BETWEEN_PAGES_HTML, ); exporter.setParameter(JRHtmlExporterParameter.HTML_FOOTER, ); try{ exporter.exportReport(); }catch(Exception e){ e.printStackTrace(); } % 这部分代码用于将Servlet生成的JasperReport对象导出成HTML格式导出所用的Servlet为JasperReport自带的ImageServlet。要特别注意的是我加了颜色部分的代码即一定要向Session变量中放入一个JasperPrint对象其keyword为“ImageServlet.DEFAULT_JASPER_PRINT_SESSION_ATTRIBUTE”这样ImageServlet就能够获取并自己主动导出报表了。 html head title%pageTitle %/title meta http-equivContent-Type contenttext/html; charsetUTF-8 link relstylesheet typetext/css hrefCSS/style.css /head body table classtitleBarT tr td        gt;gt; %pageTitle % /td /tr /table table width98% cellpadding0 cellspacing0 border0 height22 tr td        div classmenua hrefPdfServletimg srcImages/pdf.gif border0/a/div div classmenua hrefRtfServletimg srcImages/word.gif border0/a/div div classmenua hrefXlsServletimg srcImages/excel.gif border0/a/div div classmenua hrefnbsp;nbsp;/a/div div % if (pageIndex 0) { % a href本页?pageIndex0img srcImages/FirstPage.gif border0/a a href本页?pageIndex%pageIndex - 1%img srcImages/PreviousPage.gif /a % } else { % img srcImages/FirstPage_disabled.gif border0/ img srcImages/PreviousPage_disabled.gif border0/ % } if (pageIndex lastPageIndex) { % a href本页?pageIndex%pageIndex 1%img srcImages/NextPage.gif /a a href本页?pageIndex%lastPageIndex%img srcImages/LastPage.gif /a % } else { % img srcImages/NextPage_disabled.gif border0 img srcImages/LastPage_disabled.gif border0 % } % /div /td /tr /table 这段代码是将导出成HTML的报表进行分页显示。 table width98% cellpadding0 cellspacing0 border0 tr td width50%nbsp;/td td alignleft %sbuffer.toString()% /td td width50%nbsp;/td /tr /table /body /html 这里导出报表内容的代码。用Tomcat作为WebContainer显示的结果例如以下 利用这个框架我们能够轻易的实现自己主动分页的功能并将报表导出成我们想要的格式如PDFWordExcel的等。 限于篇幅这里我不可以展现报表开发的每个细节和过程可是我已经尽量将Web报表开发的大概过程提取出来并着重介绍数据源的设制交叉表的设计以及Web预览框架这些相信每个做Web报表的人都会遇到的问题及其解决方式在JasperReport的高端使用文档相对匮乏的情况下希望我的努力能给你带来一点帮助。 转载于:https://www.cnblogs.com/mengfanrong/p/3809958.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/914938.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

wordpress 文章前空格seo与sem的区别

ddl hibernate不久前,我必须使用内存数据库。 该活动与集成测试有关。 如您所知,通常将内存数据库用于集成测试。 造成这种情况的原因有很多:可移植性,良好的环境基础结构,高性能,原始数据库的一致性。 问…

做网站公司信科建站免费招商网站搭建费用

文章目录 大模型开发范式RAGLangChain框架:构建向量数据库构建检索问答链优化建议web 部署 实践部分 大模型开发范式 LLM的局限性:时效性(最新知识)、专业能力有限(垂直领域)、定制化成本高(个…

网页开发与设计的内容广州seo网站排名

前言上篇讨论过消息投递和消息消费过程中如何确保可靠传输,也提及到消息到达RabbitMQ中到被消费前也需要可靠的留存,可因许多的不确定因素会影响着消息的存在与否。消息中转点生产者发送消息到RabbitMQ中,如果交换机根据自身类型和RoutingKey…

做网站需要注册商标第几类鞋子网站建设策划书

本文简介 点赞 关注 收藏 学会了 在 《p5.js 光速入门》 里我们学过加载图片元素,学过过背景色的用法,但当时没提到背景图要怎么使用。 本文就把背景图这部分内容补充完整,并且会提到在 p5.js 里使用背景图的一些注意点。 背景图的用法…

重庆要做网站推广机关单位网站安全建设

服务器数据恢复环境&故障: 某公司的信息管理平台,通过3台虚拟机共享了一台存储设备供企业内部使用,存储设备中存放了公司内部重要的数据文件。 由于业务增长的需要,管理员又在这个存储网络上连接了一台Windows server服务器&a…

电商设计作品集企业网站设计中应注意产品发布功能优化

想要成为一名优秀的Android开发,你需要一份完备的知识体系,在这里,让我们一起成长为自己所想的那样。 本文参考了目前大部分 Android 应用启动优化的方案,将大家的方案做一个汇总,如果你有这方面的需求,只…

山西建设厅网站首页品牌高端网站建设

本地文件夹上传到Github 步骤1. 下载git步骤2. 在github中新建一个库(Repository)步骤3. 设置SSH key步骤4. 添加SSH keys步骤5. 本地文件上传到github参考 步骤1. 下载git 下载git客户端,并在本地安装完成。 步骤2. 在github中新建一个库&a…

网站要不要改版知乎 wordpress

1.父子传值&#xff0c;父组件通过属性的方式去给子组件传递值&#xff0c;子组件在properties属性去接收父组件传递过来的值&#xff1a; 父组件部分&#xff1a; <view class"pcolor"><customer id"child" bind:changSex"changSex"…

做网站 内网怎么映射微商城app开发

参考链接&#xff1a; Java中的main()函数是强制性的吗 一、引入 1、泛型是什么 首先告诉大家ArrayList就是泛型。那ArrayList能完成哪些想不到的功能呢&#xff1f;先看看下面这段代码&#xff1a; [java] view plain copy ArrayList<String> strList new ArrayL…

广东网站建设有限公司南京装修公司十大排名榜

💡💡💡本文独家改进:独家创新(Partial_C_Detect)检测头结构创新,适合科研创新度十足,强烈推荐 Partial_C_Detect | 亲测在多个数据集能够实现大幅涨点 💡💡💡Yolov8魔术师,独家首发创新(原创),适用于Yolov5、Yolov7、Yolov8等各个Yolo系列,专栏文章提…

做织梦网站之前要新建数据库吗餐厅网站开发背景

这道题我真的纠结好久&#xff0c;因为没注意那个原地的题目要求&#xff0c;所以很奇怪怎么我电脑运行成功&#xff0c;但是LeetCode上运行就是不对。气哭。 感谢群友lino的帮助。他试了set方法不行&#xff0c;直接喂给我的答案了。。。 题目&#xff1a;26. 删除排序数组中的…

小说网站seo排名怎么做河北省石家庄市裕华区

‌Groovy‌是一种基于Java虚拟机&#xff08;JVM&#xff09;的敏捷开发语言&#xff0c;结合了Python、Ruby和Smalltalk的许多强大特性。它旨在提高开发者的生产力&#xff0c;通过简洁、熟悉且易于学习的语法&#xff0c;Groovy能够与Java代码无缝集成&#xff0c;并提供强大…

湘潭网站如何建设公司网站知乎

正题 题目链接:https://www.luogu.com.cn/problem/P4331 题目大意 给出一个序列aaa&#xff0c;求一个单调上升的序列bbb使得∑i1n∣ai−bi∣\sum_{i1}^n|a_i-b_i|∑i1n​∣ai​−bi​∣最小。 解题思路 巧妙的解法 首先我们让所有的ai−ia_i-iai​−i这样我们求的bbb序列就…

网站需要人员效果好企业营销型网站建设

view() x.view() 是 PyTorch 中用于改变张量形状的方法之一&#xff0c;它允许你在保持张量元素总数不变的情况下&#xff0c;重新组织张量的维度和大小。 view() 方法的用法如下&#xff1a; x.view(*shape)其中 x 是要进行形状变换的张量&#xff0c;shape 是一个整数或整…

网站建设指标陕西省信用建设门户网站

一、聚簇索引 其实之前内容中介绍的 B 树就是聚簇索引。 这种索引不需要我们显示地使用 INDEX 语句去创建&#xff0c;InnoDB 引擎会自动创建。另外&#xff0c;在 InnoDB 引擎中&#xff0c;聚簇索引就是数据的存储方式。 它有 2 个特点&#xff1a; 特点 1 使用记录主键…

杭州 兼职 网站建设网站建网站建设

本文为2023年第十八届中国研究生电子设计竞赛兆易创新企业命题三等奖以及决赛最佳论文奖分享&#xff0c;参加极术社区的【有奖活动】分享2023研电赛作品扩大影响力&#xff0c;更有丰富电子礼品等你来领&#xff01;&#xff0c;分享2023研电赛作品扩大影响力&#xff0c;更有…

做一个二手网站怎么做网站服务器查询

​std::jthread是C20新引入的线程类&#xff0c;与 std::thread 类似&#xff0c;或者说&#xff0c;jthread是对thread进一步的封装&#xff0c;功能更强大​。 ​std::jthread的​j实际上是​joining的缩写​&#xff0c;​众所周知&#xff0c;std::thread在其生命周期结束…

保定网站建设电商型网站设计企业

文章目录 前言一、简单工厂模式定义二、举个例子三、简单工厂模式的缺点总结 前言 本篇我们了解一下简单工厂模式&#xff0c;它是设计模式的雏形&#xff0c;是学习设计模式的开端&#xff0c;我会结合案例说明它的设计思路。 一、简单工厂模式定义 简单工厂模式并不是GoF23…

连江福州网站建设头像制作器在线制作

CentOS操作系统的特点如下&#xff1a; 免费开源&#xff1a;CentOS是一个免费开源的操作系统&#xff0c;完全免费&#xff0c;无需花费任何成本。 稳定性高&#xff1a;CentOS以其出色的稳定性和安全性而闻名。它是一个基于Red Hat Enterprise Linux&#xff08;RHEL&#x…

国和建设集团网站广州网站优化公司排名

背景&#xff1a; 之前用酷安上下载的苏苏亮亮版友提供的Openwrt&#xff0c;在高通410棒子上刷机成功&#xff0c;但编译一直就没搞定。近期听说又出了个分支版本ImmortalWrt&#xff0c;刷了个版本&#xff0c;感觉界面清爽不少&#xff0c;内核也升级&#xff0c;遂打算搞定…