日期:2014-05-20  浏览次数:20630 次

Jasperreport
我知道用ireport生成报表 , 但是我现在java中调用Jasperreport的类来生成报表,这个东西怎么能变成动态的,比如说我把一个sql语句传进去,生成一个list,然后把这个list传给Jasperreport分装的类。大家帮帮忙 ,谢谢啦

------解决方案--------------------
晕,你到网上找资料看看吧,其实不好说,不过你的理解好象不太多.你可以以一个MAP的形式把你的参数传递过去,包括你的SQL语句也可以作为参数传递,在报表中通过引用参数形式引用,然后在报表查询里面执行,将生成字段放到字段参数里面,最后将需要的字段拖到报表中,它会自动产生你所有的数据,如:String sql="select * from t";
Map parameters = new HashMap();
parameters.put("strSQL",strSQL);
然后在报表工具中通过$P!{strSQL}来生成所有字段,将字段拖到报表对应字段位置就可以了。不需要对list另外处理。
------解决方案--------------------
jasperreport直接支持传入sql语句,可以看ireport或者jasperreport中自带的例子。
关于datasource相关的例子