Jasperreports6.3.1+Jaspersoft studio6.3.1进行报表开发实战教程(五)-实体类集合数据源

用实体类实现报表数据填充

创建一个实体类

上一节已经介绍了如何传入参数填充报表,这一节要用另一个数据源来填充报表,也就是上一节介绍到的jasper.fill()方法的第三个参数JRDataSource,JavaBeanColletion可以用来生成一个JRDataSource的实现 类,所以我们可以传入实体类对象集合来实现报表数据填充。
这个实体类很简单,就是学生的各科成绩,排名等这些参数。

public class StudentScore {
    private String name;
    private String id;
    private String rank;
    private String yuwne;
    private String shuxue;
    private String english;
    private String shengwu;
    private String wuli;
    private String huaxue;
    private String rankone;
    public StudentScore(String name, String id, String rank, String yuwne, String shuxue, String english,
            String shengwu, String wuli, String huaxue, String rankone) {
        super();
        this.name = name;
        this.id = id;
        this.rank = rank;
        this.yuwne = yuwne;
        this.shuxue = shuxue;
        this.english = english;
        this.shengwu = shengwu;
        this.wuli = wuli;
        this.huaxue = huaxue;
        this.rankone = rankone;
    }
}

创建一个可以生成Bean对象的Jar包

注意:在模板设计中,Jaspersoft studio只能识别Jar包文件,如果要在模板中加入实体类对象集合作为数据源,就必须将生成实体类对象集合的一个工具类,还有实体类本身打包成一个Jar然后在Jaspersoft studio中导入该Jar包,否则studio是读不到这个实体类的对象的。
该工具类由一个静态方法组成,该方法返回实体类对象的集合,一定要记住该静态方法名,后面会用到。

package test.bean;

import java.util.ArrayList;

public class StudentBeanFactory {
   

    public static ArrayList<StudentScore> getBeanCollection(){
           ArrayList<StudentScore> dataList=new ArrayList<>();
            dataList.add(new StudentScore("王小白", "95279527", "3", "102", "113", "108", "80", "82", "83", "6"));
            dataList.add(new StudentScore("王小红", "95289528", 
  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值