zoukankan      html  css  js  c++  java
  • DynamicReports 导出Excel 例子

    import java.awt.Color;
    import java.io.FileOutputStream;
    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    
    import net.sf.dynamicreports.jasper.builder.JasperReportBuilder;
    import net.sf.dynamicreports.report.builder.DynamicReports;
    import net.sf.dynamicreports.report.builder.column.Columns;
    import net.sf.dynamicreports.report.builder.component.Components;
    import net.sf.dynamicreports.report.builder.datatype.DataTypes;
    import net.sf.dynamicreports.report.builder.style.StyleBuilder;
    import net.sf.dynamicreports.report.constant.HorizontalAlignment;
    
    public class DynamicReportsDemo {
    
        /**
         * @param args
         */
        public static void main(String[] args) {
    
            JasperReportBuilder report = DynamicReports.report();// 创建空报表
            // 样式
            StyleBuilder boldStl = DynamicReports.stl.style().bold();
            StyleBuilder boldCenteredStl = DynamicReports.stl.style(boldStl)
                    .setHorizontalAlignment(HorizontalAlignment.CENTER);
            StyleBuilder titleStl = DynamicReports.stl.style(boldCenteredStl)
                    .setFontSize(16);
            StyleBuilder columnTitleStl = DynamicReports.stl.style(boldCenteredStl)
                    .setBorder(DynamicReports.stl.pen1Point())
                    .setBackgroundColor(Color.LIGHT_GRAY);
    
            List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
    
            Map<String, Object> map = new HashMap<String, Object>();
            map.put("id", 123);
            map.put("code", "185");
            map.put("service", "中国移动");
            map.put("province", "重庆");
            map.put("city", "重庆");
            map.put("type", "apple");
            map.put("name", "测试");
            list.add(map);
    
            report.columns(
                    Columns.column("ID", "id", DataTypes.integerType())
                            .setHorizontalAlignment(HorizontalAlignment.CENTER),//
                    Columns.column("手机号段", "code", DataTypes.stringType()),
                    Columns.column("运营商", "service", DataTypes.stringType()),
                    Columns.column("省份", "province", DataTypes.stringType()),
                    Columns.column("城市", "city", DataTypes.stringType()),
                    Columns.column("品牌", "type", DataTypes.stringType()))
                    .setColumnTitleStyle(columnTitleStl)
                    .setHighlightDetailEvenRows(true)
                    .title(Components.text("手机号段").setStyle(titleStl))
                    // 标题
                    .pageFooter(Components.pageXofY().setStyle(boldCenteredStl))
                    .setDataSource(list);// 数据源
            try {
                // 显示报表
                // report.show();
                report.toXls(new FileOutputStream("F:/test.xls"));
                // 生成PDF文件
                // report.toPdf(new FileOutputStream("F:/test.pdf"));
            } catch (Exception e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }
  • 相关阅读:
    php小结
    HTML-WEB前端-photoshop切图抠图详解
    JS面向对象的程序设计
    AJAX同步与异步的区别
    数据库的优化
    phpcms网站搬家 至 服务器 完整并且详细过程
    phpcms网页替换验证码功能 及 搜索功能
    用phpcms切换中英文网页的方法(不用解析二级域名)、phpcms完成pc和手机端切换(同一域名)
    JS常用屏蔽代码
    信息安全政策(隔离与监控)
  • 原文地址:https://www.cnblogs.com/vvonline/p/4107465.html
Copyright © 2011-2022 走看看