DynamicReports
try {
response.setCharacterEncoding("UTF-8");
response.setHeader("Content-disposition", "attachment;filename="
+ URLEncoder.encode("文件名", "UTF-8") + ".xls");
JRDataSource ds = new JRBeanCollectionDataSource(list);
List<ColumnBuilder> columnList = new ArrayList<ColumnBuilder>();
columnList.add(Columns
.column("任务单号", "TASKNUM", DataTypes.stringType())
.setHorizontalAlignment(HorizontalAlignment.CENTER)
.setWidth(150));
columnList.add(Columns.column("任务标题", "TASKTITLE",
DataTypes.stringType()).setWidth(250));
columnList.add(Columns.column("任务内容", "TASKCONTENT",
DataTypes.stringType()).setWidth(250));
columnList.add(Columns.column("检查企业", "OBJECTNAME",
DataTypes.stringType()).setWidth(250));
columnList.add(Columns.column("任务类型", "TASKTYPE",
DataTypes.stringType()));
columnList.add(Columns.column("任务来源", "TASKSOURCENAME",
DataTypes.stringType()));
columnList.add(Columns.column("开始时间", "STARTTIME",
DataTypes.stringType()).setWidth(120));
columnList.add(Columns.column("截止时间", "ENDTIME",
DataTypes.stringType()).setWidth(120));
columnList.add(Columns.column("紧急程度", "URGENCYNAME",
DataTypes.stringType()));
columnList.add(Columns.column("发起人", "CREATERNAME",
DataTypes.stringType()));
columnList.add(Columns.column("任务状态", "TASKSTATUS",
DataTypes.stringType()));
DynamicreportsReport.toXlsReport(columnList, ds,
response.getOutputStream());
} catch (Exception e) {
e.printStackTrace();
}
import static net.sf.dynamicreports.report.builder.DynamicReports.export;
import static net.sf.dynamicreports.report.builder.DynamicReports.report; import java.io.OutputStream;
import java.util.List; import net.sf.dynamicreports.jasper.builder.JasperReportBuilder;
import net.sf.dynamicreports.jasper.builder.export.JasperXlsExporterBuilder;
import net.sf.dynamicreports.jasper.constant.JasperProperty;
import net.sf.dynamicreports.report.builder.column.ColumnBuilder;
import net.sf.jasperreports.engine.JRDataSource; public class DynamicreportsReport { public static void toXlsReport(List<ColumnBuilder> columnList,
JRDataSource dataSource, OutputStream out) throws Exception {
try { JasperXlsExporterBuilder xlsExporter = export.xlsExporter(out)
.setDetectCellType(true).setIgnorePageMargins(true)
.setWhitePageBackground(false)
.setRemoveEmptySpaceBetweenColumns(true); JasperReportBuilder exporterBuilder = report()
.addProperty(JasperProperty.EXPORT_XLS_FREEZE_ROW, "2")
.ignorePageWidth().ignorePagination(); for (ColumnBuilder textColumnBuilder : columnList) {
exporterBuilder = exporterBuilder.columns(textColumnBuilder);
} exporterBuilder.setDataSource(dataSource).toXls(xlsExporter); // out.flush(); } catch (Exception e) {
e.printStackTrace();
} }
}
DynamicReports的更多相关文章
- Java报表开发组件DynamicReports
DynamicReports 是一个基于 JasperReports 进行扩展的 Java 报表库,可用它来快速创建报表而无需可视化报表设计工具. From : http://www.oschina ...
- DynamicReports 导出Excel 例子
import java.awt.Color; import java.io.FileOutputStream; import java.util.ArrayList; import java.util ...
- Java资源大全中文版(Awesome最新版)
Awesome系列的Java资源整理.awesome-java 就是akullpp发起维护的Java资源列表,内容包括:构建工具.数据库.框架.模板.安全.代码分析.日志.第三方库.书籍.Java 站 ...
- 国外程序员整理的Java资源大全分享
Java 几乎是许多程序员们的入门语言,并且也是世界上非常流行的编程语言.国外程序员 Andreas Kull 在其 Github 上整理了非常优秀的 Java 开发资源,推荐给大家. 译文由 Imp ...
- 基于java平台的常用资源整理
这里整理了基于java平台的常用资源 翻译 from :akullpp | awesome-java 大家一起学习,共同进步. 如果大家觉得有用,就mark一下,赞一下,或评论一下,让更多的人知道.t ...
- 完整全面的Java资源库(包括构建、操作、代码分析、编译器、数据库、社区等等)
构建 这里搜集了用来构建应用程序的工具. Apache Maven:Maven使用声明进行构建并进行依赖管理,偏向于使用约定而不是配置进行构建.Maven优于Apache Ant.后者采用了一种过程化 ...
- Java资源大全中文版(Awesome最新版)(转载)
原文地址:http://www.cnblogs.com/best/p/5876559.html 目录 业务流程管理套件 字节码操作 集群管理 代码分析 编译器生成工具 构建工具 外部配置工具 约束满足 ...
- 这里整理了基于java平台的常用资源
这里整理了基于java平台的常用资源 翻译 from :akullpp | awesome-java 大家一起学习,共同进步. 如果大家觉得有用,就mark一下,赞一下,或评论一下,让更多的人知道.t ...
- Java就业指导
想要成为合格的Java程序员或工程师到底需要具备哪些专业技能,面试者在面试之前到底需要准备哪些东西呢?本文陈列的这些内容既可以作为个人简历中的内容,也可以作为面试的时候跟面试官聊的东西,你可以把这些内 ...
随机推荐
- hdu 1251 统计拼图
二手tire木: Basic应用程序 谈到很具体的 点击打开链接 #include<cstdio> #include<cstring> #include<iostream ...
- Apache+Tomcat部署负载均衡(或集群)
本来只打算写Tomcat集群部署,简化Apache和Tomcat整合过程的.后来想了想,这样不便于没有用过Apache的朋友来学习本文内容.于是干脆加大篇幅,让对Apache不了解的朋友能对Apach ...
- PHP如何添加内置的扩展
什么时候server上PHP已安装.需要额外补充PHP如何扩展?你并不需要再次安装PHP.同phpize我们可以在原PHP安装扩展直接的基础上,. 这次编译只不过单独编译PHP的扩展库.接下来将编译好 ...
- 玩转Web之Json(一)-----easy ui+ajax + json 中关于Json的解析问题
在easy ui中使用Ajax+Json实现前后的数据交互时,当后台数据传输到客户端是需对Json数据进行解析,这里将对Json数据解析做简单总结. (一) 对于服务器返回的数据若没有做类型说明,需要 ...
- iOS 辛格尔顿
单例模式: 为什么使用单例,单例模式的用途是什么?以下我们举一个样例来诠释一下 举个大家都熟知的样例--Windows任务管理器,如图,我们能够做一个这种尝试,在Windows的"任务栏&q ...
- Java误区: 静态代码块,当把类将被载入到自己主动运行?
JAVA静态代码块会在类被载入时自己主动运行? 非常多Java开发人员的思想,被这个思想深深的轮奸了n遍,传播这个错误思想的博客,在网上一堆,越来越多的人被轮奸. 如:http://blog.csdn ...
- 深入理解学习Git工作流(转)
个人在学习git工作流的过程中,从原有的 SVN 模式很难完全理解git的协作模式,直到有一天我看到了下面的文章,好多遗留在心中的困惑迎刃而解,于是我将这部分资料进行整理放到了github上,欢迎st ...
- c# 16进制显示转化
非原创. 接收16进制数据,在TextBox委托显示: private void readPortandShow() { char[] HexChar = { '0', '1', '2', '3', ...
- LeetCode: Palindrome Partitioning [131]
[称号] Given a string s, partition s such that every substring of the partition is a palindrome. Retur ...
- 解决win10开机出现C:\WIndows\system32\config\systemprofile\Desktop不可用 问题
背景:公司一台win10机子好久没用了,今天开了打算用下(打算远程桌面),远程桌面连不上(好久没用了,用户名都忘了),所以又插上显示器和键鼠. 键盘因为是PS/2接口,不能热插拔,所以开机一段时间后( ...