JAVA编程:IReport与JasperReport开辟详解二
还得说上一点,就java本质而言,是面相对象的,但是你有没有发现,java也不全是,比如说基本类型,int,那他就是整型而不是对象,转换类型是还得借助包装类。详解IReport与JasperReport开辟详解二3.2.1计划报表如今请点击菜单"DataSource"然后拔取中"Reportquery"项,也能够点击图标,接着IReport会弹出一个对话框(如图):如今我们在"ReportSQLQuery"中输出SQL语句"select*fromtitles",然后往失落"AutomaticallyRetrieveFields"后面的钩,再点击"ReadFields"将表中的数据字段读出来如图点击"OK"前往主界面。如今该计划报表的内容了,请点击菜单"View"下的"ReportFields"项,也能够点击工具栏上的图标,然后你将会失掉表中一切的字段名如图:你能够选择你想要的列,以拖动的体例,将先中的列拖到报表中,如许IReport就会主动的将你所拖动的列举行绑定(可别告知我你不会拖动这个举措,呵呵),在这里我们只作复杂的演式,就不拖动太多的列到报表中,我们只拔取取"title_id,pubdate,title"三列就能够了。固然你假如不想用这类复杂的办法,要手工增加那也没举措,一样也能够你能够点击工具栏上的图标,这时候你的光标就会变成一个十形,你能够在报表的恣意地位画一个文本框出来,由于你在报表中画的是一个静态的文本列,这时候你得设置它的属性,你能够双击你方才画的文本框,也能够对着你所画的文本框点击右键,选"Properties"。来设置它的属性。如图:在默许情形下翻开属性窗口后会主动的转到"TextField"选项卡上,这时候你得设置一个与数据库绝对应的数据范例,这个不克不及堕落,不然会在你编译或天生报表时堕落(未作测试,不克不及断定会在那一步呈现毛病),另有一个我们必需存眷的是"TextFieldexpression",在它的输出框中默许为"$F{field}"这时候你必要将年夜括号中的"Field"改为你表中要指定的列名。假如你要问"$F"代表甚么,那你就看上面的这个表就应当晓得了。设置好这两个后就能够绑定一个列的数据了。不外你必需将它放在"detail"区中,不然你在运转报表时大概只能显现一笔记录到报表中。为何这就不必解译了吧!全部报表的空页面IReport已为你分别好了数据摆放的地位,好比:"title,pageHeader,columnHeader"等等。元素称号援用变量variablesName$V{variablesName}参数parameterName$P{parameterName}字段filedsName$F{filedsName}如今运转报表总以为有点单调,我们能够为报表设置一些题目之类的信息,在工具栏中找到,点击它然后在"Title”区画一个文本框,双击它或点右键选"Properties"这时候呈现一个静态文本框的属性窗口,选中"StaticText“选项卡,输出”测试报表“,能够在"Font"选项卡当选择你但愿看到的字体和字号,如图在这里你也能够不必输出,也能够从数据库中取数据来添补它,具全在"common"选项卡,点击后,你会看到"PrintWhenexpression"在它的输出框中输出你所想要的列名,详细操纵如上,也要以从右侧的三尖角图标出来,有四个范例"Fields,Parameters,Variables,Formulas"这里只先容前两种,"Fields"在后面已说过了,详细操纵是一样的,就不再细说,第二种"Parameter"这个参数一样平常不在IReport中利用,前面再讲。然后依照设置"title"的体例来设置"ColumnName“,做好后你所看到的中文显现不出来,或乱码,怎样办呢?你能够见页底的FAQ,如今一个最基础的报表能够以为已做好了,可是还得调剂它的地位,和高低的界限线,要否则数据显现到页面时会十分的零星。 如今保留,记得最好保留为与你新建报表时的名字一样。来由:“由于在利用文件流来读取报表,然后编译时会呈现毛病。保留完后点击工具栏上的图标举行编译,在工具栏上有两个图标一个是实行静态报表用的,而另外一个是用来添补静态报表的,如今我们只能用静态报表实行的按钮,来添补报表,用前者来实行的话除你的静态文本以外,别的的显现null。IReport在默许情形下为"JRViewerPreview",天生后的效果为:你也能够在"Build"菜单当选择你想要失掉的报表格局,如:PDF,XSL,CSV,HTML等...当你选择好后假如没有指定运转你指定天生报表的运转程序的话,它默许会保留到IReport确当前目次中,不会是在你保留报表地点目次。假如你不喜好看英文界面的话,你能够在菜单"Tools"下的"Options..."能够设置言语,报表的保留地位,备份地位,运转报表所用的程序等等......未完待续FAQ1.天生报表时中文发生乱码?JasperReport的中文处置,必要一个亚洲言语包"iTextAsian.jar,"话到IReport下的lib目次中;然后修正报表的"PDFFontName"将其改成"STSong-Light",再则是修正"PDFEmbeddedPDFEncoding"将其改成"UniGB-UCS2-H(ChineseSimplified)",如许就能够办理JasperReport的中文成绩了(针对PDF设置的,对Excel大概要少一些,不外如许设置一样也能显现为中文,是不爱引响的)。2.报表编译时发生NoClassDefFoundException非常?在代码处置JasperReport时呈现该非常,是由于在援用JasperReport的一些jar文件不完全,因事情忙我的处置体例是将JasperReport目次下的DemoamplewebappWEB-INFlib一切的jar文件,全援用了,以防意外,同时也没偶然间往过量的穷究。必定会有一些不用要的包被援用了,假如你偶然间能够看一下,再将不用要的jar往失落。3.另存为PDF时呈现UnisupportEncodingException非常?在报表计划的过程当中不免会有小毛病,这是由于没有改动"PDFFontName"应改成"STSong-Light".下载相干:IReport下载地点:http://ireport.sourceforge.netJasperReport下载地点:http://jasperreports.sourceforge.netiText亚洲言语包下载地点:http://www.lowagie.com/iTextjava主要分三块,j2se:java的基础核心语言。j2me:java的微型模块,专门针对内存小,没有持续电源等小型设备。j2ee:java的企业模块,专门针对企业数据库服务器的连接维护。 是一种将安全性(Security)列为第一优先考虑的语言 你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。 《JAVA语言程序设计》或《JAVA从入门到精通》这两本书开始学,等你编程有感觉的时候也可以回看一下。《JAVA读书笔记》这本书,因为讲的代码很多,也很容易看懂,涉及到面也到位。是你学习技术巩固的好书,学完后就看看《JAVA编程思想》这本书,找找一个自己写的代码跟书上的代码有什么不一样。 是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言 《JAVA语言程序设计》或《JAVA从入门到精通》这两本书开始学,等你编程有感觉的时候也可以回看一下。《JAVA读书笔记》这本书,因为讲的代码很多,也很容易看懂,涉及到面也到位。是你学习技术巩固的好书,学完后就看看《JAVA编程思想》这本书,找找一个自己写的代码跟书上的代码有什么不一样。 有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想) 《JAVA语言程序设计》或《JAVA从入门到精通》这两本书开始学,等你编程有感觉的时候也可以回看一下。《JAVA读书笔记》这本书,因为讲的代码很多,也很容易看懂,涉及到面也到位。是你学习技术巩固的好书,学完后就看看《JAVA编程思想》这本书,找找一个自己写的代码跟书上的代码有什么不一样。 我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。 当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢? 是一种将安全性(Security)列为第一优先考虑的语言 是一种突破用户端机器环境和CPU Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading) 那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧! Jive的资料在很多网站上都有,大家可以找来研究一下。相信你读完代码后,会有脱胎换骨的感觉。遗憾的是Jive从2.5以后就不再无条件的开放源代码,同时有licence限制。不过幸好还有中国一流的Java程序员关注它,外国人不开源了,中国人就不能开源吗?这里向大家推荐一个汉化的Jive版本—J道。Jive(J道版)是由中国Java界大名 鼎鼎的banq在Jive 2.1版本基础上改编而成, 全中文,增加了一些实用功能,如贴图,用户头像和用户资料查询等,而且有一个开发团队在不断升级。你可以访问banq的网站 你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。 是一种使网页(Web Page)产生生动活泼画面的语言 是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能 在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。 设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧
页:
[1]