jasperReport Studio java报表设计(详细)
一、环境搭建
在spring-mvc.xml加入
<!-- jasperReports-->
<import resource="classpath*:spring-mvc-jasperreports.xml"/>
spring-mvc-jasperreports.xml具体配置代码:
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.2.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.2.xsd
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.2.xsd">
<!-- jasperReports报表集成视图解析器 -->
<bean id="jasperReportsViewResolver"
class="org.springframework.web.servlet.view.jasperreports.JasperReportsViewResolver">
<!-- 执行优先级,值越小优先级越高 -->
<property name="order" value="0"/>
<!-- 处理视图返回 -->
<property name="viewClass" value="com.silverdata.smart.report.jasperreports.JasperReportsView"/>
<property name="prefix" value="/WEB-INF/jasper/"/>
<property name="suffix" value=".jasper"/>
<!-- 可通过配置此项用来过滤是否执行此视图解析器 -->
<!-- <property name="viewNames" value="rpt*"/> -->
<!-- 报表数据源 -->
<property name="jdbcDataSource" ref="dataSource"/>
<!-- 扩展参数 -->
<property name="exporterParameters">
<map>
<!-- 指定格式报表的内容编码 -->
<entry key="net.sf.jasperreports.engine.JRExporterParameter.CHARACTER_ENCODING">
<value>UTF-8</value>
</entry>
<!-- 通过Web访问时图片的URI -->
<!-- <entry key="net.sf.jasperreports.engine.export.JRHtmlExporterParameter.IMAGES_URI">
<value type="java.lang.String">/jasper/image.jsp?image=</value>
</entry> -->
<!-- 图片目录的绝对路径 -->
<!-- <entry key="net.sf.jasperreports.engine.export.JRHtmlExporterParameter.IMAGES_DIR_NAME">
<value type="java.lang.String">D:\\work\\***\\framework\\tmp</value>
</entry> -->
<!-- 是否输出图片到目录 -->
<!-- <entry key="net.sf.jasperreports.engine.export.JRHtmlExporterParameter.IS_OUTPUT_IMAGES_TO_DIR">
<value type="java.lang.String">true</value>
</entry> -->
</map>
</property>
</bean>
</beans> jar包需要:
<!-- jasperreports -->
<dependency>
<groupId>net.sf.jasperreports</groupId>
<artifactId>jasperreports</artifactId>
</dependency>
<dependency>
<groupId>net.sf.jasperreports</groupId>
<artifactId>jasperreports-fonts</artifactId>
</dependency>
二、jasperreports报表设计步骤
1.新建项目配置jar包


若jar包unbond未找到~检查是否目录路径是纯英文的~中文不识别
2.新建报表模版~一般中国的报表直接用空白A4去做

3.若要用测试数据展现表格配置


然后根据需要查询字段表~加入测试数据一般也不使用
4.页面设计

5.配置

样式

编译

java代码部分:
开发代码:
public ModelAndView apply(ModelAndView modelAndView,@PathVariable("id") Long id) {
注释部分为二维码生成
/*List<Order> list = Lists.newArrayList();
Order order;
for (int i = 0; i < 100; i++) {
order = new Order(i, "供应商" + i, "厦门市" + i + "号楼", i % 2 == 0 ? "厦门" : "周口", new Timestamp(System.currentTimeMillis()));
list.add(order);
}
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
QRCodeUtils.encode("PE12873619284611231213", 100, 100, byteArrayOutputStream);
InputStream file = new ByteArrayInputStream(byteArrayOutputStream.toByteArray());
Map<String, Object> m = new HashMap<String, Object>();
m.put("QRCodeString", "PE12873619284611231213");
m.put("QRCode", file);
m.put("image", "E:\\ideaWorkSpace\\pipegallery\\pipegallery-operation\\src\\main\\webapp\\WEB-INF\\jasper\\silhouette.jpg");
return ReportUtils.toPdf("Silhouette4", m, list);*/
List<ApplyDetails> applyDetailsList = Lists.newArrayList();
Map<String, Object> m = new HashMap<String, Object>();
List<Map> list =materialsIeApplyDetailsService.getAllByDynamicWhere(id);
MaterialsIeApply materialsIeApply=materialsIeApplyService.get(id);
m.put("APPLICANT",materialsIeApply.getApplicant());//申请人
m.put("ORDERNO",materialsIeApply.getOrderno());
m.put("IEAPPLYTYPE","0".equals(materialsIeApply.getIeApplyType())?"租用":"使用");
m.put("PLANGETDATE",materialsIeApply.getPlanGetDate());//领用时间
m.put("PLANRETURNDATE",materialsIeApply.getPlanReturnDate());//归还时间
m.put("AUDIT",materialsIeApply.getAuditId());//审核人
m.put("AUDITDATE",materialsIeApply.getApplyDate());//审核时间
//(0未提交、1待审核、2已审核、3未通过、4打回、5部分出库、6全部出库、7作废)
m.put("APPROVALSTATE", ReturnMaterialsIeApplyString.returnString(materialsIeApply.getApprovalState()));//申请单状态
m.put("APPLYDATE",materialsIeApply.getApplyDate());//申请提交时间
m.put("REASON",materialsIeApply.getReason());
m.put("REMARK",materialsIeApply.getRemark());
m.put("AUDITOPINION",materialsIeApply.getAuditOpinion());//审核意见
ApplyDetails applyDetails;
for (Map map:list){
applyDetails=new ApplyDetails(map.get("materialsname").toString(),map.get("suppliername").toString(),Integer.parseInt(map.get("amount").toString()),map.get("remark").toString(),map.get("spec").toString(),"1");
applyDetailsList.add(applyDetails);
}
return ReportUtils.toPdf("MaterialsIeApply", m, applyDetailsList);
}
jasperReport Studio java报表设计(详细)的更多相关文章
- JasperReport报表设计4
在JRXML模板(或JRXML文件)中的JasperReport 都是标准的 XML文件,以.JRXML扩展.所有JRXML文件包含标签<jasperReport>,作为根元素.这反过来又 ...
- JasperReport编译报表设计5
我们在前面的章节中产生的JasperReport模板(JRXML文件).这个文件不能直接用于生成报告.它必须被编译成JasperReport的“本地二进制"格式,称为Jasperfile.在 ...
- Jaspersoft Studio报表设计
1 开发工具 1.1 软件名称 名称:TIBCO Jaspersoft Studio 版本:6.0或以上,建议6.2.1 1.2 软件安装 免安装软件包,拷贝即可使用,建议放在D:盘或其 ...
- Java生鲜电商平台-系统报表设计与架构
Java生鲜电商平台-系统报表设计与架构 说明:任何一个运行的平台都需要一个很清楚的报表来显示,那么作为Java开源生鲜电商平台而言,我们应该如何设计报表呢?或者说我们希望报表来看到什么数据呢? ...
- 第一部分:使用iReport制作报表的详细过程(Windows环境下)
提示:在有些板块,文中的图片看不到,建议到我的blog浏览文章:http://blog.csdn.net/jemlee2002/文章将会涉及3个方面的内容: 第一部分:使用iReport制作报表的详细 ...
- HighCharts SVN IReport进行PDF报表设计--模板
BOS物流项目笔记第十五天 HIghcharts是很强大的图表绘制插件,它是基于纯js绘制的.当然地,对于图表也会有很多操作了.下面就我工作时遇到的一些比较常见的highcharts的操作进行小结,不 ...
- Java报表开发组件DynamicReports
DynamicReports 是一个基于 JasperReports 进行扩展的 Java 报表库,可用它来快速创建报表而无需可视化报表设计工具. From : http://www.oschina ...
- java课程设计(计算器)
JAVA课程 设 计 报 告 1206401-18 瞿杰 一.设计时间 2013年6月 24日-----6月28日 二.设计地点 湖南城市学院实验楼计算机506机房 三.设计目的 1.巩固学习VB ...
- Java课程设计——博客作业教学数据分析系统(201521123084 林正晟)
#课程设计--博客作业教学数据分析系统(201521123084 林正晟) 1.团队课程设计博客链接 博客作业教学数据分析系统 2.个人负责模块或任务说明 学生登陆界面的前端实现和与数据库的连接 学生 ...
随机推荐
- sed-加速你在Linux的文件编辑
1. Sed简介 sed是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为"模式空间"(pattern space),接着用sed命令处理缓冲区中 ...
- mysql聚集索引
转自http://www.cnblogs.com/tuyile006/archive/2009/08/28/1555615.html 微软的SQL SERVER提供了两种索引:聚集索引(cluster ...
- Spring AOP 初探
本文可作为北京尚学堂spring课程的学习笔记 首先谈谈什么是AOP 它能干什么 AOP Aspect Oriented Programming(面向切面的编程) 什么叫面向切面? 就是我们可以动态的 ...
- Android进阶(十二)Fragment VS Activity
Fragment VS Activity Android是在Android 3.0 (API level 11)开始引入Fragment的. 可以把Fragment想成Activity中的模块,这 ...
- 【一天一道LeetCode】索引目录 ---C++实现
[一天一道LeetCode]汇总目录 这篇博客主要收藏了博主所做题目的索引目录,帮助各位读者更加快捷的跳转到对应题目 目录按照难易程度:easy,medium,hard来划分,读者可以按照难易程度进行 ...
- C++ Primer 有感(复制控制)
1.不管类是否定义了自己的析构函数,编译器都 自动执行类中非static数据成员的析构函数. 2.如果我们没有定义复制构造函数,编译器就会为我们合成一个.合成复制构造函数的行为是,执行逐个成员初始化, ...
- 【Android 应用开发】Android 网络编程 API笔记 - java.net 包 权限 地址 套接字 相关类 简介
Android 网络编程相关的包 : 9 包, 20 接口, 103 类, 6 枚举, 14异常; -- Java包 : java.net 包 (6接口, 34类, 2枚举, 12异常); -- An ...
- Ext JS 5初探(三)
在上文提到了本地化文件的问题,然后在Ext JS 5的包里找了找,居然还没包含本地化包.我估计目前还不到考虑本地化的时候.在Sencha Touch中,是没有本地化包的,但是要让Ext JS也不包含本 ...
- OpenCV导向滤波(引导滤波)实现(Guided Filter)代码,以及使用颜色先验算法去雾
论文下载地址:http://research.microsoft.com/en-us/um/people/jiansun/papers/GuidedFilter_ECCV10.pdf 本文主要介绍导向 ...
- AngularJS进阶(五)Angular实现下拉菜单多选
Angular实现下拉菜单多选 写这篇文章时,引用文章地址如下: http://ngmodules.org/modules/angularjs-dropdown-multiselect http:// ...