JasperReport+Ireport+ssh

本文介绍了如何在SSH框架中利用iReport和JasperReport进行报表开发。首先确保SSH环境配置完成,接着在JSP页面上进行设计。创建报表文件时要注意字体设置,特别是中文显示的配置,以及二维码的插入方法。报表参数的引用通过表达式$P{REPORT_PARAMETERS_MAP}.get("company")实现。经过这些步骤,报表的主体工作完成,最后展示出预期的报表效果。
摘要由CSDN通过智能技术生成

由于项目中要做报表,最近研究了一下iReport+JasperReport。JasperReports是一个开源的java报表制作引擎;iReportJasperReports的一个GUI工具,用来生成JasperReportsjrxml文件。

1.搭建环境

框架SSH。假设环境已搭好。

2.jsp页面

<%@ page language="java" pageEncoding="GB2312"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
	<head>
		<title>Struts2+ JasperReports 使用示例</title>
	</head>
	<body>
		<a href="HTML.action">HTML</a>
		<br>
		<a href="PDF.action">PDF</a>
		<br>
		<a href="XML.action">XML</a>
		<br>
		<a href="CSV.action">CSV</a>
		<br>
		<a href="XLS.action">XLS</a>
	</body>
</html>

3.action

public class JasperAction extends ActionSupport {
	private static final long serialVersionUID = 1L;
	private List<Student> myList;
	private Map<String,String> params ;

	public String execute() throws Exception {
		params =  new HashMap<String, String>();
		params.put("infoNo", "100005");
		params.put("company", "深圳市***科技有限公司");
		
		myList  =new ArrayList<Student>();
		myList.add(new Student(1, "张三","101"));
		myList.add(new Student(2, "李四","102"));
		myList.add(new Student(3, "王五","103"));
		myList.add(new Student(4, "顺溜","104"));
		myList.add(new Student(5, "二丫","105"));
		myList.add(new Student(6, "哈哈","107"));
		myList.add(new Student(7, "A001","108"));
		myList.add(new Student(8, "A002","109"));
		
		return SUCCESS;
	}

	public List<Student> getMyList() {
		return myList;
	}
	public Map<String, String> getParams() {
		return params;
	}
	public void setParams(Map<String, String> params) {
		this.params = params;
	}
	
	
	
}

4.struts.xml

<package name="default"
		extends="struts-default,jasperreports-default">
		<action name="PDF" class="com.sterning.JasperAction">
			<result name="success" type="jasper">
				<param name="location">
					/jasper/report2.jasper
				</param>
				<param name="dataSource">myList</param>
				<param name="format">PDF</param>
				<param name="documentName">studentTable</param>
				<param name="reportParameters">params</param>
			</result>		 
		</action>
		<action name="PDF2" class="com.sterning.JasperAction">
			<result name="success" type="jasper">
				<param name="location">
					/jasper/report2.jasper
				</param>
				<param name="dataSource">myList</param>
				<param name="format">PDF</param>
				<param name="documentName">学生信息报表</param>
				<param name="reportParameters">params</param>
			</result>
		</action>
		<action name="HTML" class="com.sterning.JasperAction">
			<result name="success" type="jasper">
				<param name="location">
					/jasper/report2.jasper
				</param>
				<param name="dataSource">myList</param>
				<param name="format">HTML</param>
				<param name="documentName">学生信息报表</param>
				<param name="reportParameters">params</param>
			</result>
		</action>
		<action name="XML" class="com.sterning.JasperAction">
			<result name="success" type="jasper">
				<param name="location">
					/jasper/report2.jasper
				</param>
				<param name="dataSource">myList</param>
				<param name="format">XML</param>
				<param name="documentName">学生信息报表</param>
				<param name="reportParameters">params</param>
			</result>
		</action>
		<action name="CSV" class="com.sterning.JasperAction">
			<result name="success" type="jasper">
				<param name="location">
					/jasper/report2.jasper
				</param>
				<param name="dataSource">myList</param>
				<param name="format">CSV</param>
				<param name="documentName">学生信息报表</param>
				<param name="reportParameters">params</param>
			</result>
		</action>
		<action name="XLS" class="com.sterning.JasperAction">
			<result name="success" type="jasper">
				<param name="location">
					/jasper/report2.jasper
				</param>
				<param name="dataSource">myList</param>
				<param name="format">XLS</param>
				<param name="documentName">学生信息报表</param>
				<param name="reportParameters">params</param>
			</result>
		</action>
	</package>

5.添加需要的jar包

6.创建报表文件


说明:如果有显示中文的地方,需对属性进行相应设置:font name:宋体;Pdf Font Name is Now …:STSong-Light;Pdf Embedded:选中;Pdf Encoding:UniGB-UCS2-H(Chinese Simplified);怎样插入二维码,请参考(http://hi.baidu.com/simple_vei/item/002543073fa5b9056d904863);

对于"Parameters",例如:company,当添加到图中,右键--Edit expression打开对话框,表达式修改成“$P{REPORT_PARAMETERS_MAP}.get("company")”;

7.主体工作完成。

8.最终效果




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值