这里只有ireport的开发没有web侧的程序。

ireport的数据源可以说是多种多样,大致可以通过文件 数据库 bean类这三种方式,这里只介绍bean类

(数据库比较简单可参考其他的网站,文件没用过不评论(其实是不会))

首先需要建立bean类 下面是一个父bean有4个属性,child是子列表 顺带一提这里使用list 或者使用 ReportChild[]数组对报表开发时的选择有一定影响

public class ReportData implements Serializable{

    private String id;

    private String name;

    private String className;

    private List<ReportChild> child;

    public String getId() {
return id;
} public void setId(String id) {
this.id = id;
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public String getClassName() {
return className;
} public void setClassName(String className) {
this.className = className;
} public List<ReportChild> getChild() {
return child;
} public void setChild(List<ReportChild> child) {
this.child = child;
}
}

子节点元素(不要在意属性英文的含义 很烂)

public class ReportChild implements Serializable{

    public String courseName;

    public int degree;

    public String getCourseName() {
return courseName;
} public void setCourseName(String courseName) {
this.courseName = courseName;
} public int getDegree() {
return degree;
} public void setDegree(int degree) {
this.degree = degree;
}
}

最后建立数据工厂

public class ReportDataSourceFactory {

    private static ReportData[] data= null;

    public static ReportData[] getBeanArray()
{
data = new ReportData[2]; data[0] = new ReportData();
data[0].setId("001");
data[0].setName("陈");
data[0].setClassName("一班");
data[0].setChild(Arrays.asList(ReportChildSourceFactory.getBeanArray())); data[1] = new ReportData();
data[1].setId("002");
data[1].setName("拉拉");
data[1].setClassName("二班");
data[1].setChild(Arrays.asList(ReportChildSourceFactory.getBeanArray())); return data;
}
} public class ReportChildSourceFactory { private static ReportChild[] data= null; public static ReportChild[] getBeanArray()
{
data = new ReportChild[2]; data[0] = new ReportChild();
data[0].degree = 30;
data[0].courseName = "合格"; data[1] = new ReportChild();
data[1].degree = 70;
data[1].courseName = "不合格";
return data;
}
}

然后请编译。这样javabean的准备就完成了。

ireport5.6+jasperreport6.3开发(三)--以javabean为基准的报表开发(javabean)的更多相关文章

  1. ireport5.6+jasperreport6.3开发(五)--以javabean为基准的报表开发(action关联)

    这里的是定方法主要参照sturts2-jasperreport-plugin的完成方法(其实就是抄的) PDF的样子是这样的两页的pdf 然后action的配置是这样的(不要在意格式) @Parent ...

  2. ireport5.6+jasperreport6.3开发(四)--以javabean为基准的报表开发(ireport)

    javabean完成以后就是添加ireport的报表了 打开ireport的option然后在classpath中添加路径. 然后在ireport中追加数据源如图,点击图标后会出现数据源列表然后按ne ...

  3. ActiveReport系列报表开发随笔收集

    转自:博客园 http://www.cnblogs.com/dahuzizyd/archive/2007/04/11/ActiveReport_All.html 使用ActiveReport for ...

  4. ireport5.6+jasperreport6.3开发(二)--web开发的配置

    ireport5.6只能编译出*.jasper的报表包,最终报表需要被输出为一个doc html pdf excel等文件,这时就需要jasperreport6.5的库进行配合了. jasperrep ...

  5. [.net 面向对象程序设计进阶] (24) 团队开发利器(三)使用SVN多分支并行开发(下)

    [.net 面向对象程序设计进阶] (24) 团队开发利器(三)使用SVN多分支并行开发(下) 本篇导读: 接上篇继续介绍SVN的高级功能,即使用分支并行开发.随着需求的不断变更,新功能的增加.特别是 ...

  6. App开发三种模式

    APP开发三种模式 现在App开发的模式包含以下三种: Native App 原生开发AppWeb App 网页AppHybrid App 混合原生和Web技术开发的App 详细介绍: http:// ...

  7. iOS开发三步搞定百度推送

    iOS开发三步搞定百度推送   百度推送很简单,准备工作:在百度云推送平台注册应用,上传证书. 步骤一: 百度云推送平台 http://push.baidu.com/sdk/push_client_s ...

  8. 基于Spring MVC的Web应用开发(三) - Resources

    基于Spring MVC的Web应用开发(3) - Resources 上一篇介绍了在基于Spring MVC的Web项目中加入日志,本文介绍Spring MVC如何处理资源文件. 注意到本项目的we ...

  9. Java Web高性能开发(三)

    今日要闻: Clarifai:可识别视频中物体 最近几年,得益于深度学习技术的发展,谷歌和Facebook等企业的研究人员在图形识别软件领域取得了重大突破.现在,一家名为Clarifai的创业公司则提 ...

随机推荐

  1. AutoHotkey 使用笔记

    注意事项 为了支持中文需安装 AutoHotkey_L Notepad2对ahk代码高亮和折叠支持良好,SciTE则能够提供输入提示 绿色版*.ahk关联AutoHotkey.exe就能双击运行 Au ...

  2. 初试Node —— node.js的安装

    可以在这里查看最新版本: http://nodejs.org/download/ 在Mac下安装相当简单,只需要下载Mac OS X Installer (.pkg),然后一路下一步即可. 在Linu ...

  3. WPF、Sivelright、UWP

    Sivelright:  http://www.cnblogs.com/webabcd/category/106371.html UWP 律师查询 MVVM WPF入门教程系列一——基础 WPF入门教 ...

  4. 手机sdk 开发

    题记:很多做游戏开发的人,估计都或多或少地接过渠道SDK,什么UC,当乐,91,小米,360......据统计国内市场当前不下于100家渠道,还包括一些没有SDK的小渠道.每个渠道SDK接入的方法呢, ...

  5. java 观察者模式

    /** 抽象的观察者 */ public interface Watcher { // status 为 被被观察着传递过来的状态 public void update(String status); ...

  6. sys,os,模块-正则表达式

    # *__conding:utf-8__* """"我是注释""" sys,os模块 import sysimport os pr ...

  7. centos7下搭建nginx+php7.1+mariadb+memcached+redis

    一.环境准备 1.首先介绍一下环境,以及我们今天的主角们 我用的环境是最小化安装的centos7,mariadb(江湖传言mysql被oracle收购后,人们担心像java一样毁在oracle手上于是 ...

  8. Linux下安装GO语言环境

    在/root/downloads/下 wget -c https://storage.googleapis.com/golang/go1.7.1.linux-amd64.tar.gz 解压文件至/us ...

  9. GET和POST区别,http和https区别

    在开发中我们需要和后台进行数据的交互,但是咋样交互呢?通常我们是通过网络请求进行数据的交互,一般使用http/https/tcp/udp等进行数据的交互. http长连接和短连接 1. HTTP协议与 ...

  10. 过目不忘JS正则表达式

    正则表达式,有木有人像我一样,学了好几遍却还是很懵圈,学的时候老明白了,学完了忘光了.好吧,其实还是练的不够,所谓温故而知新,可以为师矣,今天就随我来复习一下这傲娇的正则表达式吧. 为啥要有正则表达式 ...