该项目中使用JasperReport打印报表,流程大概是查询相应的报表表格,选择下载报表文件,可以将当前的报表下载到本地。实现思路大概是这个样子的。
第一步,创建对应的ireport模板。
第二步,SpringMvc跟JasperReport整合,
1、继承JasperReportsMultiFormatView类,并重写fillReport()方法,在该方法中增加setUrl()实现,这样就可以在controller中指定要使用的报表模板文件了。这样做的好处是,只需要一个jasperReport配置文件,可以在controller中动态的设定报表模板url。
2、创建报表视图配置文件,并指定解析器类为自定义的视图解析器类(也就是自己上面继承JasperReportsMultiFormatView的类)
3、Jasper报表的渲染需要用到XmlViewResolver视图解析器,这样你的项目中就会存在多个视图解析器。需要注意的是,项目中如果使用了多个视图解析器,则需要设置order的值来区分解析器的使用顺序,order值越小则越靠前。增加XmlViewResolver视图解析器的同时,并指定其要解析的配置文件路径。