`

LazyValidatorForm

    博客分类:
  • java
 
阅读更多

1. private Map formObjGenerationMKey(ActionForm form) {

//TODO:为什么,方法里map有值,而对应调用方法中的map缺没值呢?map不是引用类型吗?

LazyValidatorForm lazyForm = (LazyValidatorForm) form;

return lazyForm.getMap();

}

 

2.

/**

* 导出多sheet的excel文件

* @throws JRException 

* @throws IOException 

*/

public void servletExportMultiSheetXls(String[] arr, List[] list, Map[] maps,String fileName) throws JRException, IOException {

ArrayList<JasperPrint> jaserPrints = new ArrayList<JasperPrint>();

JasperPrint jasperPrint = null;

OutputStream output = response.getOutputStream();

response.setContentType(getContentType(DocType.XLS));

response.setHeader("Content-Disposition", "attachment; filename=\"" + URLEncoder.encode(fileName, "UTF-8") + "\"");

for (int i = 0; i < arr.length; i++) {

JRDataSource dataSource = new JRBeanCollectionDataSource(list[i]);

jasperPrint = this.getJasperPrint(arr[i], maps[i], dataSource);

jaserPrints.add(jasperPrint);

}

JRAbstractExporter exporter = getJRExporter(DocType.XLS);

exporter.setParameter(JRXlsExporterParameter.OUTPUT_STREAM, output);

exporter.setParameter(JRXlsExporterParameter.JASPER_PRINT_LIST, jaserPrints);

exporter.setParameter(JRXlsExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_ROWS, Boolean.TRUE); // 删除记录最下面的空行   

exporter.setParameter(JRXlsExporterParameter.IS_ONE_PAGE_PER_SHEET, Boolean.FALSE);// 删除多余的ColumnHeader   

exporter.setParameter(JRXlsExporterParameter.IS_WHITE_PAGE_BACKGROUND, Boolean.FALSE);// 显示边框   

//exporter.setParameter(JRXlsExporterParameter.IS_ONE_PAGE_PER_SHEET,true);

exporter.exportReport();

}


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics