grails项目中导出文件
来源:互联网 发布:无言网络歌手歌词 编辑:程序博客网 时间:2024/05/16 03:36
导出的Service:
import fd.task.Taskimport grails.transaction.Transactionalimport org.apache.poi.hssf.usermodel.HSSFWorkbookimport org.apache.poi.ss.usermodel.Workbookimport org.apache.poi.xssf.usermodel.XSSFWorkbook@Transactionalclass TakinExportExcelService { def grailsApplication /** * * @param sheetName * @param domainName * @param domainInstanceList * @param exportProperties * @param excel2007 * @return */ def simpleExport(String sheetName, String domainName, List domainInstanceList, List<String> exportProperties, boolean excel2007 = true) { def workbook = getWorkBook(excel2007) def sheet = workbook.createSheet(sheetName)// def message = grailsApplication.mainContext.getBean('taglib.com.TakinMessageTagLib') def headerRow = sheet.createRow(0) exportProperties.eachWithIndex { p, i ->// headerRow.createCell(i).setCellValue(String.valueOf(message.property(domain:domainName, property: p))) } domainInstanceList.eachWithIndex { Object domainInstance, int rowIndex -> def dataRow = sheet.createRow(rowIndex+1) exportProperties.eachWithIndex { p, i -> dataRow.createCell(i).setCellValue(domainInstance[p] ? domainInstance[p].toString() : '') } } return workbook } protected Workbook getWorkBook(boolean excel2007 = true) { return excel2007 ? new XSSFWorkbook() : new HSSFWorkbook() }}
controller:def export() { if ( params ) { params.remove('max') params.remove('offset') } def List = domain.createCriteria().list(params) { ilike("taskName", "%" + "2" + "%") } def exportProperties = ['taskName','taskType','taskCategory','groupId','firstResponsible','beginDate','planEndDate','actualEndDate','finishPercent','finishState','finalState','dateCreated','createUser','lastUpdated','updateUser','deleteFlag']// if ( SpringSecurityUtils.ifAnyGranted('ROLE_SUPER_ADMIN,ROLE_MAIN_CORPORATION_USER,ROLE_SUB_CORPORATION_USER')) {// exportProperties.add(0, 'merchantNumber')// } String filename = "xxx.xlsx" filename = new String(filename.getBytes("UTF-8"), "ISO8859-1") def workbook = takinExportExcelService.simpleExport('xxx', 'domain', List, exportProperties, true) response.setContentType('application/vnd.ms-excel') response.setHeader('Content-Disposition', 'Attachment;Filename="' + filename + '"') workbook.write(response.outputStream) }
1 0
- grails项目中导出文件
- Grails导出csv格式的文件
- 如何在grails中导出Excel列表
- 在Eclipse中开发Grails项目
- 如何在Eclipse中开发Grails项目
- grails项目中遇到的错误
- 批处理导出项目中所有java文件到txt中
- 如何加载OgreSE导出的文件到项目中
- Android项目中使用Eclipse导出jar文件
- Android项目中使用Eclipse导出jar文件
- Android项目中使用Eclipse导出jar文件
- Android项目中使用Eclipse导出jar文件
- Android项目中使用Eclipse导出jar文件
- Android项目中使用Eclipse导出jar文件
- Android项目中使用Eclipse导出jar文件
- java项目中Excel文件的导入导出
- java项目中Excel文件的导入导出
- java项目中Excel文件的导入导出
- 实践多种搜索算法求解八数码问题python实现
- mysql主从复制(超简单)
- openCV vs2013配置
- css多种样式修饰最后哪个实现???
- C++STL容器的基本特性和原理
- grails项目中导出文件
- 解决SlideDetailsLayout与ViewPager垂直滚动事件冲突问题
- 将博客搬至CSDN
- studio 提示不区分大小写
- 史上最流行的Android组件、工具、框架大全
- YAML: Define an R function
- 五大常用算法
- LeetCode-54.Spiral Matrix I
- Linux查看History记录加时间戳小技巧