一、环境搭建
在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.个人负责模块或任务说明 学生登陆界面的前端实现和与数据库的连接 学生 ...
随机推荐
-
android:clipChildren属性的作用
该属性默认为true,这个属性需要添加到最顶层的ViewGroup,作用是控制子View是否可以超出它所在的父View设定的边界 比如ImageView设置高度100dp,而它所在的父View设置的高 ...
-
为Ubuntu笔记本电脑设置WiFi热点共享上网
该文由土木坛子转译而来,说是转译,其实看截图就可以方便的设置,没有任何命令,全是图形界面,方便容易.我们都知道怎样在 windows 7 系统上如何设计 Wifi 热点,当你只有一条网线,多台计算机的 ...
-
windows系统中ubuntu虚拟机安装及web项目到服务上(一)
一:ununtu虚拟机安装 安装vm, 桥接,换国内源,安装ssh 服务 装jdk,装tomcat,装mysql, 部署,完成 主要用到的软件工具 Xmanager Enterprise 4,VMwa ...
-
Gradle Goodness: Continue Build Even with Failed Tasks
If we run a Gradle build and one of the tasks fails, the whole build stops immediately. So we have f ...
-
packets
packets 时间限制(普通/Java):1000MS/10000MS 运行内存限制:65536KByte 总提交: 27 测试通过: 14 描述 A factor ...
-
Byte[]、Image、Bitmap 之间的相互转换
原文:Byte[].Image.Bitmap 之间的相互转换 /// <summary> /// 将图片Image转换成Byte[] /// </summ ...
-
201521145048《Java程序设计》第11周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多线程相关内容. 2. 书面作业 本次PTA作业题集多线程 Q1.互斥访问与同步访问 完成题集4-4(互斥访问)与4-5(同步访问) ...
-
WPF Geometry 添加Path数据
当图片转svg,svg转Xaml后,根据数据加载显示图片 DrawingImage: <DrawingImage x:Key="Image.Search"> <D ...
-
DocX开源WORD操作组件的学习系列一
DocX学习系列 DocX开源WORD操作组件的学习系列一 : http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_sharp_001_docx1.htm ...
-
pom文件
groupid和artifactId被统称为“坐标”是为了保证项目唯一性而提出的,如果你要把你项目弄到maven本地仓库去,你想要找到你的项目就必须根据这两个id去查找. groupId一般分为多个段 ...