jasper不同数据源的导出问题
jasper导出相关
jasper report导出的相关内容在网上也有很多了,但是很多博客或者材料上都有一大堆不相关的代码,而我只是想快速的知道怎么正确使用api来实现即可。这里写一个针对和我一个想法的朋友们的jasper文档,也总结一下最近的学习内容。
jasper的导出,一般就是选择数据源,然后将数据源通过JasperFillManager.fillReport()
的方式添加到JasperPrint中,这个JasperPrint就是已经按照你自己刻画的模板填好数据的实例。
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperFile, paramMap,jsonDataSource);
第一个参数jasperFile是你的模板文件,第二个参数是想要传入你模板中的Parameters参数,是一个Map类型,如果你的模板中不需要其他参数,可以传一个空的map进来,最后一个就是你的数据源的类型。
用JSON作为数据源
1、在jasper studio中创建一个新的report,report的数据源选择JsonDataSource,然后创建你Json中包含的字段field。
2、在java代码中,需要将你的Json数据存放到jasper对应的Json数据源,
JRDataSource jsonDataSource = new JsonDataSource(new ByteArrayInputStream(value.getBytes("UTF-8")));
JasperPrint jasperPrint = Jasp