首先要准备的jar:
asm-2.2.3.jar struts2-jasperreports-plugin-2.1.8.1.jar jasperreports-3.7.1 (注意,这个版本要和ireport的版本一样) commons-digester-1.7.jar iText-2.1.7.jar iTextAsian.jar(用来解决报表的中文问题) iText-rtf-2.1.7.jar poi-3.6.jar groovy-all-1.7.5.jar
一定要防止包的冲突,所以把一些低版本的包删掉
一 ,首先用ireport生成一个 .jaspe文件
二,将.jasper文件加入到工程下面
三,在action中
@Controller
public class ReportAction extends ActionSupport{
private List<Emp> empList ;
@Resource private EmpService service;
public String execute(){
this.empList = service.getAllEmps();
return SUCCESS;
}
public List<Emp> getEmpList() {
return empList;
}
public void setEmpList(List<Emp> empList) {
this.empList = empList;
}
}
四,struts.xml中
<packagename="report"namespace="/report"extends="jasperreports-default">
<actionname="reportAction"class="reportAction">
<resultname="success"type="jasper">
<!—指定.jasper文件在工程中的位置 -->
<paramname="location">report2.jasper</param>
<!— 指定数据源 -->
<paramname="dataSource">empList</param>
<!—指定转换类型-->
<paramname="format">PDF</param>
</result>
</action>
</package>
五,jsp页面
<a href="${pageContext.request.contextPath }/report/reportAction.action">访问报表</a>