实现JRDatasource 接口
来源:互联网 发布:马尔可夫链 知乎 编辑:程序博客网 时间:2024/05/22 12:58
- 自定义实现JRDatasurce接口
public class TestDataSource implements JRDataSource {private List<Object> data ; private int index = -1; public TestDataSource(List list) {this.data = list; }@Overridepublic Object getFieldValue(JRField field) throws JRException {String fieldName = field.getName(); Object obj = data .get( index ); CheckSpace cp = (CheckSpace)obj;if(fieldName.equals("bill")){return cp.getSpaceName(); }return cp.getSpaceId(); }@Overridepublic boolean next() throws JRException {index ++; return ( index < data .size()); }public List<Object> getData() {return data;}public void setData(List<Object> data) {this.data = data;}public int getIndex() {return index;}public void setIndex(int index) {this.index = index;}}
2.打印报表数据类
public class TestReportAction extends BaseReportAction {private static final String REPORT_DIR="reports/test/";private static final String REPORT_NAME_TEST = REPORT_DIR + "test";private String format;public String report(){Map<String, Object> parameters = new HashMap<String, Object>();JasperUtils.compileReportToJasper(genReportRealPathName(REPORT_NAME_TEST));List<JasperPrint> list = new ArrayList<JasperPrint>();List<Object> data = new ArrayList<Object>(); for ( int i = 0; i < 100; i++) { data.add(" 货号 " + i); } list.add(this.genLargeReport(REPORT_NAME_TEST, parameters,new TestDataSource(data)));this.showLarge(list);return null;}/** * 打印报表 * * @param list */@SuppressWarnings("unchecked")private void showLarge(List list) {if (ReportsService.REPORT_TYPE_WORD.equals(format))showLargeRTF(list);else if (ReportsService.REPORT_TYPE_EXCEL.equals(format))showLargeXLS(list);elseshowLargePDF(list);}public String getFormat() {return format;}public void setFormat(String format) {this.format = format;}}
3.新增test.jrxml
0 0
- 实现JRDatasource 接口
- 实现接口
- 实现接口
- 接口实现
- 接口实现
- 接口----实现
- 接口(五)实现接口
- java接口 接口实现 继承
- C#接口-接口的实现
- C# 接口,显示实现接口
- iReport-JasperReport报表开发:使用JRDataSource填充含有SubDataset的报表
- C#接口实现 - 第五节、实现接口
- 接口的显示实现
- 俄罗斯方块的接口实现
- 实现接口1
- 实现接口2
- 实现接口3
- 实现接口4
- Android 用Animation-list实现逐帧动画
- Redis Sentinel;Redis Sentinel配置;redis集群;redis故障转移
- 查看SGA和PGA使用率
- 初探架构之美
- java中的Font
- 实现JRDatasource 接口
- 改写linux窗口程序设计的Qt例子(7)
- javamail开发报错Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/mail/util
- Struts2表单基本验证
- Java--线程--线程控制,线程安全,线程同步,线程等待,线程交互,死锁,互斥锁,读写锁
- 观察者模式
- Effective C++(1-2) 编译器替换预处理器
- Android Bitmap详细介绍
- 自用cookie缓存对象一例