zoukankan      html  css  js  c++  java
  • Java导出Excel文件

     1  /**
     2      * 导出 用get请求
     3      * @param response
     4      * @param
     5      * @throws IOException
     6      */
     7     @RequestMapping(value = "/download")
     8     public void download(HttpServletResponse response,HttpServletRequest request) throws IOException {
     9 
    10         int quality = UtilReq.parseInt(request.getParameter("quality"), -1);
    11         String status = UtilReq.parseString(request.getParameter("status"),"");
    12         String mobile = UtilReq.parseString(request.getParameter("mobile"),"");
    13         long agentUid = UtilReq.parseLong(request.getParameter("agentUid"),0l);
    14         HSSFWorkbook workbook = aritstService.download(quality,status,mobile,agentUid);
    15 
    16         //设置要导出的文件的名字
    17         String fileName="";
    18         Date now = new Date();
    19 
    20         fileName = "艺人数据" + UtilDate.formatDate2Str(now,"yyyy年MM月dd日HH时mm分ss秒") + ".xls";
    21 
    22         fileName = new String(fileName.getBytes("gbk"), "iso-8859-1");
    23         response.setContentType("application/octet-stream");
    24         response.setHeader("Content-disposition", "attachment;filename=" + fileName);
    25         response.flushBuffer();
    26         workbook.write(response.getOutputStream());
    27     }
     1 /**
     2      * 导出
     3      * @param quality
     4      * @param status
     5      * @param mobile
     6      * @param agentUid
     7      * @return
     8      */
     9     public HSSFWorkbook download(int quality, String status, String mobile, long agentUid) {
    10         //创建
    11         HSSFWorkbook wb = new HSSFWorkbook();
    12         //headers表示excel表中第一行的表头
    13         String[] headers = {"姓名","邀请码","所属经纪人","经纪人手机号", "总收入金额", "接单数", "成单数","满意度","优质艺人"};
    14         //创建一个只有头信息的空表
    15         HSSFSheet sheet = null;
    16         sheet = wb.createSheet("艺人数据");
    17 
    18         //headers表示excel表中第一行的表头
    19         HSSFRow row = sheet.createRow(0);
    20 
    21         //在excel表中添加表头
    22         for(int i=0;i<headers.length;i++){
    23             HSSFCell cell = row.createCell(i);
    24             HSSFRichTextString text = new HSSFRichTextString(headers[i]);
    25             cell.setCellValue(text);
    26         }
    27 
    28         //查询艺人列表,根据筛选条件
    29         List<Integer> statusList = null;
    30         if ("".equals(status)){
    31             status = "1,2";
    32         }
    33         if (StringUtils.isNotEmpty(status)) {
    34             statusList = new ArrayList<>();
    35             String[] statuss = status.split(",");
    36             for (String statu : statuss) {
    37                 statusList.add(Integer.parseInt(statu));
    38             }
    39         }
    40         //需要导出的数据
    41         List<Aritst> aritsts = aritstDao.selectArtistByAgentAndMobile(statusList, mobile, agentUid,quality, null,null,null);
    42 
    43         int rowNum = 1;
    44         if (null != aritsts) {
    45             //在表中存放查询到的数据放入对应的列
    46             for (Aritst aritst : aritsts) {
    47                 HSSFRow row1 = sheet.createRow(rowNum);
    48                 //"姓名","邀请码","所属经纪人","经纪人手机号", "总收入金额", "接单号", "成单数","满意度","是否优质艺人"
    49 
    50                 row1.createCell(0).setCellValue(aritst.getNickname());
    51                 row1.createCell(1).setCellValue(aritst.getInviteCode());
    52                 row1.createCell(2).setCellValue(aritst.getAgent());
    53                 row1.createCell(3).setCellValue(aritst.getAgentMobile());
    54                 row1.createCell(4).setCellValue(aritst.getRevenue());
    55                 row1.createCell(5).setCellValue(aritst.getConnectionnum());
    56                 row1.createCell(6).setCellValue(aritst.getServernum());
    57                 row1.createCell(7).setCellValue(aritst.getSatisfiedRate());
    58                 row1.createCell(8).setCellValue(aritst.getQuality()==1?"是":"否");
    59                 rowNum++;
    60             }
    61         }
    62         return wb;
    63     }
  • 相关阅读:
    LeetCode——Generate Parentheses
    LeetCode——Best Time to Buy and Sell Stock IV
    LeetCode——Best Time to Buy and Sell Stock III
    LeetCode——Best Time to Buy and Sell Stock
    LeetCode——Find Minimum in Rotated Sorted Array
    Mahout实现基于用户的协同过滤算法
    使用Java对文件进行解压缩
    LeetCode——Convert Sorted Array to Binary Search Tree
    LeetCode——Missing Number
    LeetCode——Integer to Roman
  • 原文地址:https://www.cnblogs.com/zhanglingbing/p/10979286.html
Copyright © 2011-2022 走看看