Java学习

java,spring,structs,hibernate,jsf,ireport,jfreechart,jasperreport,tomcat,jboss -----本博客已经搬家了,新的地址是 http://www.javaly.cn 如果有对文章有任何疑问或者有任何不懂的地方,欢迎到www.javaly.cn (Java乐园)指出,我会尽力帮助解决。一起进步

 

一个简单的iReport + jasperReports例子:

  

iReport and jasperReports 生成一个简单的report.

   对于初学的人来说,做一个ireport不是很容易的事情,但现在很少有比较简单的例子。我在这里就举例一个简单的,一个教你上手的ireport例子。 网上很多例子都是和WEB 或者 database相关的,没有一个独立的例子,对于刚学的人,那不算是个好事情。那我就来填补这个空白,我做的这个例子,只有ireportjavaBean 实现,所以省去了很多东西,但对于刚接触的人来说,是件好事情,只需要关心ireport,不用去做很多的无用的事情。当学会了ireport的时候,再去做相关的也不迟。

     新建一个报表:取名 teach1



 

建成后,我们可以看到: ireport模板分为几块: title,pageHeader,columnHeader,detail,columnFooter,pageFooter

lastPageFooter,summary. 每个模块的都能从名字看出来它的作用。title是放标题的,pageHeader是每页的头,columnHeader 是每列的开头,detail是细节的意思,打个比方哈,比如我要显示一个list,那么我们的数据就应该放在detail里面。columnFooter ,pageFooter,LastPageFooter我都不说了,和对于的Header差不多。 summary就是放在最后面的,就和我们接报告的总结部分,闲话不多说了,我们进入正题。



 

如图:我建了一个title,表头和数据的列,这个例子我只用了3列,分别是 No.,name,age.先在左边添加3 个field,让后拖到模块里面去。还有属性,可以点右键,具体的就自己去摸索了,很简单。

 这样,我们这个例子的ireport的模板就做好了。

让后我写了一个java Class 和一个 javaBean.

package test.com.******.operator.taxi.service;

publicclass TestIreport {

    publicstaticvoid main(String args[]){

         JasperPrint print = null;

         try {

           InputStream is = new FileInputStream("/home/developer/apps/iReport-2.0.0/teach1.jasper");

           JasperReport jasperReport = (JasperReport) JRLoader.loadObject(is);

           HashMap<String, Object> parameters1 = new HashMap<String, Object>();

          List<TestJavaBean> list = new ArrayList<TestJavaBean>();

           for(int i = 0; i < 10; i++){

               TestJavaBean bean = new TestJavaBean();

               bean.setNo(""+i);bean.setName("test"+i);bean.setAge(i+18);

               list.add(bean);

           }

//        chatListsub.add(chat10); chatListsub.add(chat11); chatListsub.add(chat12);   chatListsub.add(chats1);

//         chatListsub.add(chat20); chatListsub.add(chat21); chatListsub.add(chat22); chatListsub.add(chats2);

           parameters1.put("SUBREPORT_DIR", "/home/developer/apps/iReport-2.0.0/");

           //parameters1.put("MyDatasource", new JRBeanCollectionDataSource(chatListsub));

           print = JasperFillManager.fillReport(jasperReport, parameters1,

                   new JRBeanCollectionDataSource(list));

           JasperViewer.viewReport(print, false);

         } catch (Exception ex) {

           ex.printStackTrace();

         }

         }

}

package test.com.***.operator.taxi.service;

publicclass TestJavaBean {

    private String No;

    private String name;

    privateintage;

    public String getNo() {

        returnNo;

    }

    publicvoid setNo(String no) {

        No = no;

    }

    public String getName() {

        returnname;

    }

    publicvoid setName(String name) {

        this.name = name;

    }

    publicint getAge() {

        returnage;

    }

    publicvoid setAge(int age) {

        this.age = age;

    }

}




posted on 2008-06-18 20:26 找个美女做老婆 阅读(16006) 评论(12)  编辑  收藏

评论

# re: 一个简单的iReport + jasperReports例子: 2008-06-18 20:37 1231

不错不错,这个真的是简单,我试下看看,学习学习  回复  更多评论   

# re: 一个简单的iReport + jasperReports例子: 2008-10-22 10:19 Gucci

楼主的文章真是好,我看其他的都是一头雾水无从下手,还是楼主这样一步一步来使我受益匪浅  回复  更多评论   

# re: 一个简单的iReport + jasperReports例子:[未登录] 2008-12-06 16:17 me

怎么把jrxml文件给转化为ireport文件的  回复  更多评论   

# re: 一个简单的iReport + jasperReports例子: 2008-12-26 13:31 淡淡的点点滴滴

什么呀 一点都不具体,跟field跟这些字段是怎么回事说啦吗  回复  更多评论   

# re: 一个简单的iReport + jasperReports例子: 2010-05-27 15:03 鲁西西

不错  回复  更多评论   

# re: 一个简单的iReport + jasperReports例子: 2010-06-11 16:35 DynamicReports

http://dynamicreports.sourceforge.net/  回复  更多评论   

# re: 一个简单的iReport + jasperReports例子: 2010-08-26 13:07 鄙视你的人

听你前面的描述就不用看了、还什么填补空白、往自己脸上贴金吧、这个例子一点用都没有、我们做项目要用、你这都什么什么啊、数据库都不用的、也不是WEB  回复  更多评论   

# re: 一个简单的iReport + jasperReports例子: 2011-02-21 09:14 路过

垃圾!  回复  更多评论   

# re: 一个简单的iReport + jasperReports例子: 2011-06-02 09:55 摄氏度

这个实例的含金量几乎没有,最起码得连接数据库啊,这可好,省去最主要的环节了,更简单看起来真方便!  回复  更多评论   

# re: 一个简单的iReport + jasperReports例子: 2011-09-27 21:54 网友

我正在入门,这篇文章用处很大,谢谢,  回复  更多评论   

# re: 一个简单的iReport + jasperReports例子: 2012-10-11 15:22 dever2011

你这个是只能在服务器段弹出吧,要是客户端访问的话,能在客户端弹出来吗?
  回复  更多评论   

# re: 一个简单的iReport + jasperReports例子: 2014-12-10 10:26 水电费

二  回复  更多评论   


只有注册用户登录后才能发表评论。


网站导航:
 

导航

统计

公告

本blog已经搬到新家了, 新家:www.javaly.cn
 http://www.javaly.cn

常用链接

留言簿(6)

随笔档案

文章档案

搜索

最新评论

阅读排行榜

评论排行榜