一、導(dǎo)入jasperreport相關(guān)jar包,這里采用當(dāng)前比較穩(wěn)定的5.2版本
--------------------------------------------------------------------------
jasperreports-5.2.0.jar
jasperreports-applet-5.2.0.jar
jasperreports-fonts-5.2.0.jar
jasperreports-javaflow-5.2.0.jar
其他jar包:
groovy-all-2.0.1.jar: 將.jrxml編譯成.jasper.如果你不使用java編譯,而使用ireport工具編譯則無須導(dǎo)入該包
iText-2.1.7.jar: 生成pdf所依賴的包
iTextAsian.jar: 支持pdf中文字體依賴的包
poi-3.7.jar: 導(dǎo)出excel時候用
commons-collections-2.1.1.jar
commons-digester-2.1.jar: 解析.jrxml
commons-logging-1.1.1.jar
poi-3.7-20101029.jar: 生成excel報表所依賴的jar
圖形展現(xiàn)jfreechart相關(guān)jar包:
jfreechart-1.0.12.jar
jcommon-1.0.15.jar
二、jasperreports與struts2集成,則要導(dǎo)入struts2的jasperreports插件,可從
http://mvnrepository.com/獲取
------------------------------------------------------------------------------------------------------------------------------------
struts2-jasperreports-plugin-2.2.3.jar
location 是指我們剛才用iReport編譯生成的jasper文件
dataSource 是指我們執(zhí)行的數(shù)據(jù)庫查詢結(jié)果,JavaBean , List
format 是指需要輸出的類型,默認(rèn)是PDF,其他的輸出類型有:XML、HTML、XLS、CSV、RTF ,注意這里一定要大寫
除了這幾個參數(shù),還有下列參數(shù):
delimiter 是指如果輸出類型為CSV的話,指定分割符,默認(rèn)為“,”
parse 是指是否解析location參數(shù)中的EL表達(dá)式,默認(rèn)為 true
contentDisposition 指定disposition,默認(rèn)為“inline”,如果設(shè)為“attachment”就是強制下載
documentName 輸出的文件名
format 格式,默認(rèn)為“PDF”,其他的有:CSV、HTML、RTF、XLS、XML
imageServletUrl 生成圖形的路徑
三、struts.xml配置
------------------------
struts2中的需繼承jasperreports-default命名空間
<package name=“default” extends="struts-default, jasperreports-default">
<!-- 報表輸出Action -->
<action name="JR_*_*" class="jasperReportAction">
<result name="success" type="jasper">
<param name="location">/reports/{1}.jasper</param>
<param name="connection">connection</param>
<param name="format">{2}</param>
<param name="documentName">{1}</param>
<param name="reportParameters">para</param>
<param name="imageServletUrl"><![CDATA[/image?image=]]></param>
</result>
</action>
</package>
location - 提供利用iReport制作編譯好的報表文件。
dataSource - 數(shù)據(jù)源
format - 報表輸出格式
reportParameters - 報表參數(shù)
四、web.xml配置
---------------------
報表生成html需配置/image
<!-- jasperreports報表的配置 start -->
<servlet>
<servlet-name>JasperReportImageServlet</servlet-name>
<servlet-class>net.sf.jasperreports.j2ee.servlets.ImageServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>JasperReportImageServlet</servlet-name>
<url-pattern>/image</url-pattern>
</servlet-mapping>
<!-- jasperreports報表的配置 end -->