コレクションのデータをレポートに印刷
1470 ワード
Ireport作成テンプレート:
まず、Ireportレポートに含まれるデータとそのタイプを教えてください.
クラスをコンパイルし、MyDataSourcePrivoderクラスと関連クラス(Users,Dep)をireportの中間に配置します.
まず、Ireportレポートに含まれるデータとそのタイプを教えてください.
package com.yohn.other;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import net.sf.jasperreports.engine.JRDataSource;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.data.JRAbstractBeanDataSourceProvider;
import net.sf.jasperreports.engine.data.JRBeanArrayDataSource;
import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;
import com.accp.pojos.Dep;
import com.accp.pojos.Users;
// , ireport
public class MyDataSourcePrivoder extends JRAbstractBeanDataSourceProvider {
//
public MyDataSourcePrivoder() {
super(Users.class);//
}
//
public JRDataSource create(JasperReport jr)
throws JRException {
List<Users> ls=new ArrayList();
for(int i=0;i<5;i++){
Users us=new Users();
us.setBirthday(new Date());
us.setDep(new Dep());
us.setId(i);
us.setPwd("abcd");
us.setSex(1);
us.setUsername("accp"+i);
ls.add(us);
}
return new JRBeanCollectionDataSource(ls);
}
public void dispose(JRDataSource arg0) throws JRException {
}
}
クラスをコンパイルし、MyDataSourcePrivoderクラスと関連クラス(Users,Dep)をireportの中間に配置します.