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程序员或工程师到底需要具备哪些专业技能,面试者在面试之前到底需要准备哪些东西呢?本文陈列的这些内容既可以作为个人简历中的内容,也可以作为面试的时候跟面试官聊的东西,你可以把这些内 ...
 
随机推荐
- A WPF File ListView and ComboBox
			
源码下载: Download FileListView_Version_2.zip Download FileListView_Version_2_Binaries.zip Download File ...
 - Android搜索芽发展clientVersion1.0结束(过程和结果显示)
			
本文原:http://blog.csdn.net/minimicall 转载标明. 博士生.找我,我希望有一个合作伙伴.为了帮助他解决了移动终端产品.他给了我他的想法的叙述性说明,搜索布.要搜索布图像 ...
 - window.history.back()的改进方法window.history.go()
			
今天在做项目时,測试人员提出了一条bug,起初没当回事,在改动过程中才意识到其重要性,故记录下来. 依照需求,系统应该实现例如以下的功能:有三个关联的页面a.aspx(简称a),b.aspx(简称b) ...
 - OOP思想
			
OOP思想 读者朋友们大家好,我们今天这一讲就接着前面的封装继续讲解,今天就是在前面内容上面的升级,OOP思想中的继承,我们就先来解释一下继承到底是什么意思,我们在什么地方会用到继续. 继承就是,后代 ...
 - NTVS:把Visual Studio变成Node.js IDE 的工具
			
NTVS(Node.js Tools for Visual Studio) 运行于VS2012或者VS2013.一些node.js的爱好者已经从PTVS(Python Tools for Visual ...
 - configure.ac:20: error: Autoconf version 2.65 or higher is required
			
安装thrift例如,下面的问题出现: configure.ac:20: error: Autoconf version 2.65 or higher is required wget http:// ...
 - HSQLDB相关信息及用法汇总
			
运行模式 说明 启动命令 JDBC例 内存(Memory-Only)模式 所有数据都在内存里操作.应用程序退出后则数据被销毁.无需另外启动HSQLDB Server 启动方式1:通过程序中首次调用Co ...
 - docker 真实---安装基本映像 (一)
			
浸泡了几天的官方网站,正确docker有了更好的理解.准备着手建立一个公司的开发和测试环境,包含java.python. 环境介绍 首先说明一下我的环境 2物理server(以后简称为主机) 主机A配 ...
 - Swift编程语言学习1.3——类型安全和投机型
			
Swift 是类型安全(type safe )语言.类型安全的语言可以让你清楚地知道代码被处理值类型.假设你需要一个代码String.你绝对不能进去一个不小心传球Int. 因为 Swift 它是类型安 ...
 - Swift开发学习(两):Playground
			
Swift开发学习:Playground 大约 对于软件用户.游戏玩家,我一直提倡用户体验.也是用户,是各种开发工具的使用者.也会喜欢用户体验做得好的工具软件.这次苹果想开发人员所想,提供了一个能够玩 ...