• poi 导出Excel --实战代码(根据模板导出,复制代码用)


    html代码

      <a class="btn btn-primary fa fa-export" href="javascript:void(0);" onclick="expExcel()"><span>导出excel</span></a>

    js代码

    function expExcel() {
            
            var ids=new Array();
            $("input:checkbox:checked").each(function(){
                //ids.push($(this).val());
                ids.push($(this).attr("id"));
            });
            if(ids.length==0){
                alert("请至少选中一条记录");
                return;
            }
             // alert(ids);
            /*    for(var id in ids){
               alert(id);
            } */
            if (confirm("导出选中页面数据?")) {
            
                var url = __ctx + '/platform/xxx/xxx/exportExcel.htm?myId='+ ids;
                var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
                if (userAgent.indexOf("compatible") > -1
                        && userAgent.indexOf("MSIE") > -1) {//判断是否IE浏览器
                    window.location.href(url);
                } else {
                    window.open(url, "导出报表");
                }
            }
        }

    java代码

    @RequestMapping({ "exportExcel" })
        public void exportExcel(HttpServletRequest request, HttpServletResponse response) throws Exception {
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
            String[] aryIds = RequestUtil.getStringAryByStr(request, "myId");
            QueryFilter queryFilter = getQuerFilter(request);
            String myIds = "";
    
            for (int i = 0; i < aryIds.length; i++) {
                String tmp = aryIds[i].replace("jqg_xxxxGrid_", "");
    
                if (i != aryIds.length - 1) {
                    myIds += "'" + tmp + "',";
                } else {
                    myIds += "'" + tmp + "'";
                }
            }
            queryFilter.addParamsFilter("whereSql", "MY_ID_ in (" + myIds + ")");
            queryFilter.addParamsFilter("orderBySql", "TBSJ ASC");
    
            List<Ggdjqyfgfc> query = ggdjqyfgfcManager.query(queryFilter);
    
            String dirPath = FileUtil.getClassesPath() + File.separator + "template" + File.separator + "exportMode" + File.separator;
            String fileName = "ggdjfgfc.xls";
            FileInputStream inStream = new FileInputStream(new File(dirPath + fileName));
    
            HSSFWorkbook wb = new HSSFWorkbook(inStream);
            HSSFSheet sheet = wb.getSheetAt(0);
    
            HSSFCell cell = null;
    
            for (int i = 0; i < query.size(); i++) {
                Ggdjqyfgfc e = query.get(i);
                HSSFRow row = sheet.getRow(i + 2);
                row = ExcelUtil.getNotNullRow(sheet, i + 2);
    
                cell = ExcelUtil.getNotNullCell(wb, row, 0);
                cell.setCellValue(sdf.format(e.getTbsj()));
    
                cell = ExcelUtil.getNotNullCell(wb, row, 1);
                cell.setCellValue(e.getGdj() + "");
    
                cell = ExcelUtil.getNotNullCell(wb, row, 2);
                cell.setCellValue(e.getRjdl() + "");
    
            }
    
            fileName = "xxxx表_" + ".xls";
    
            response.setContentType("application/octet-stream;charset=UTF-8");
            response.setHeader("Content-Type", "application/vnd.ms-excel");
            response.setHeader("Content-Disposition", "attachment;filename=" + new String(fileName.getBytes("GB2312"), "8859_1"));
            response.addHeader("Pargam", "no-cache");
            response.addHeader("Cache-Control", "no-cache");
            OutputStream out = response.getOutputStream();
            wb.write(out);
            out.flush();
            out.close();
        }
  • 相关阅读:
    java Concurrent包学习笔记(二):CountDownLatch和CyclicBarrier
    java Concurrent包学习笔记(四):BlockingQueue
    Linux Linux程序练习十五(进程间的通信共享内存版)
    Linux shell中的符号
    Linux shell程序一
    Linux Linux程序练习十四(多进程压力测试)
    Linux Linux程序练习十三(信号阻塞,捕获)
    Linux 网络编程详解二(socket创建流程、多进程版)
    Linux 网络编程详解一(IP套接字结构体、网络字节序,地址转换函数)
    Linux shell实战(ipcs工具)
  • 原文地址:https://www.cnblogs.com/rdchen/p/13949719.html
Copyright © 2020-2023  润新知