jasperReport 导出 excel 提供多种设置

来源:互联网 发布:php 301重定向 编辑:程序博客网 时间:2024/05/16 19:02

 

默认采用的是 JRXlsExporter 类, 在此类中的 createSheet 中

 

                   
             
protected void createSheet(String name) {
        sheet 
= workbook.createSheet(name);
                                      
//插入下面代码

        
if (sheetConfig != null{
            sheetConfig.configSheet(sheet);
        }


    }

 

sheetConfig 是JRXlsExporter 字段,并增加其设置和得到方法,如下

 

public JRXlsExportConfig getSheetConfig() {
        
return sheetConfig;
    }


    
public void setSheetConfig(JRXlsExportConfig sheetConfig) {
        
this.sheetConfig = sheetConfig;
    }

excel导出配置接口

 

public interface JRXlsExportConfig {

    
void configSheet(HSSFSheet sheet);

}

 

对导出excel 要做什么配置,只要实现这个接口就可以拉,

JRXlsExporter xlsExporter = new JRXlsExporter();

            JRXlsExportConfig sheetConfig 
= new JRXlsExportConfig() {

                
public void configSheet(HSSFSheet sheet) {

                    HSSFPrintSetup printSetup 
= sheet.getPrintSetup();
                    
if (print.getOrientation() == JRReport.ORIENTATION_LANDSCAPE) {
                        printSetup.setLandscape(
true);
                    }


                    printSetup.setPaperSize(HSSFPrintSetup.A4_PAPERSIZE);

                }

            }
;

            xlsExporter.setSheetConfig(sheetConfig);

例如