日期:2014-05-17  浏览次数:20820 次

jasperReports跟struts2整合开发报表

首先需要的包

1.stauts2-2.1.8的基础完整jar文件

2.jasperReports-3.7.2的部分文件

3.iTextAsian.jar用于出来中文问题的包

4.struts2-jasperreports-plugin-2.1.8.jar

?

全部包文件如下


strut.xml的配置如下

?

?

<struts>

<constant name="struts.objectFactory" value="struts" />

<constant name="struts.action.extension" value="action" />

<!-- package必须继承 jasperreports-default-->

<package name="default" extends="jasperreports-default">

<action name="jasperAction" class="com.zfy.report.ReportAction">

? ?<!-- 返回类型必须是jasper,这是固定写法 -->

<result name="success" type="jasper">

? <!-- 配置报表属性 -->

? <param name="location">/report/order.jasper</param>

? <param name="format">HTML</param>

? <param name="connection">conn</param>

</result>

</action>

</package>

</struts>

?

ReportAction.java代码如下

?

?

?private Connection conn = null;

? ? @Override

? ? public String execute() throws Exception {

? ? ? ? conn = DB.getConnection();

? ? ? ? return SUCCESS;

? ? }

?

? ? public Connection getConn() {

? ? ? ? return conn;

? ? }

?

? ? public void setConn(Connection conn) {

? ? ? ? this.conn = conn;

? ? }

?

在webroot目录下建立report文件夹

?

打开iReport3.7.2,新建,此处以该模版为例,


?

连接到数据库打开主界面后删除图片,否则在MyEclipse中会报错,或者干脆选择空白模版。

?

为了能正常的显示中文,需要将字体改为宋体,


若要想在PDF中正常显示中文,还需要将各字段属性修改

?


?

OK现在可以点这个图标编译了


将编译后的.jasper格式文件放到report文件中,启动Tomcat访问action就完成了。。。

?

ps:对应HTML中的图片XX问题 只要在webroot目录下新建images文件夹,然后将

jasperreports-3.7.2\net\sf\jasperreports\engine\images下的pixel.GIF文件复制到这个目录下并重命名为px就好了