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.个人负责模块或任务说明 学生登陆界面的前端实现和与数据库的连接 学生 ...
随机推荐
- Linux Shell 只列出目录的方法
在实际应用中,我们有时需要仅列出目录,下面是 4 种不同的方法. 1. 利用 ls 命令的 -d 选项: $ ls -d */ Desktop/ pic/ shell/ src/ 2. 利用 ls 命 ...
- (NO.00001)iOS游戏SpeedBoy Lite成形记(二十六)
到目前为止,选手跑到终点时仿佛没什么激动人心的事情发生呢?貌似需要添加一些胜利的特效啊! 前面说好的不添加特效,只完成游戏功能的诺言呢? T T 我们主要想实现这样一个特效效果: 1.胜利的玩家突出显 ...
- Python学习笔记 - 函数参数
>>> def power(x): ... return x * x ... >>> power(5) 25 >>> def power(x, n ...
- RHEL6安装python包tornado
RHEL6安装python包tornado tornado是使用Python开发的全栈式(full-stack)Web框架和异步网络库,最早由Friendfeed开发.通过使用非阻塞IO,Tornad ...
- VS2005的数据断点功能
多年前在VS2005强大的条件断点功能里面讨论过VS2005的条件断点功能. 其实在VS2005里面还有比较好用的(为什么我不用很牛逼呢?因为和OD比起来实在是太简陋了,但是使用上还是比较方便的)内存 ...
- 在多台PC上进行ROS通讯-学习笔记
首先,致谢易科(ExBot)和ROSWiki中文社区. 重要参考文献: Running ROS across multiple machines http://wiki.ros.org/ROS/Tut ...
- Android进阶(二十一)创建Android虚拟机
创建Android虚拟机
- 如何修改新建脚本模板-ScriptTemplates(Unity3D开发之十五)
猴子原创,欢迎转载.转载请注明: 转载自Cocos2Der-CSDN,谢谢! 原文地址: http://blog.csdn.net/cocos2der/article/details/44957631 ...
- RHEL6 安装KVM
RHEL6 安装KVM # egrep '^flags.*(vmx|svm)' /proc/cpuinfo 有显示说明CPU支持VT功能 2.在主板BIOS中开启CPU的Virtual Technol ...
- LIRe 源代码分析 1:整体结构
===================================================== LIRe源代码分析系列文章列表: LIRe 源代码分析 1:整体结构 LIRe 源代码分析 ...