zhaolicric 发表于 2013-1-15 02:10:00

数据库中数据,导出excel

这是提交方式..
document.location.href="servlet/ExportServlet";

servlet中{      String fileName = "exportBOM.xls";      try {            fileName = new String(fileName.getBytes(), "iso8859-1");//解决中文 文件名问题          } catch (UnsupportedEncodingException e1) {            e1.printStackTrace();          }          response.setHeader("content-disposition", "attachment; filename="+ fileName);// 设定输出文件头          response.setContentType("application/msexcel;charset=UTF-8");// 定义输出类型          getInputStream(response,bomId);}public void getInputStream(HttpServletResponse response,String bomId) {   BCompGoods bg=new BCompGoods();      try {            OutputStream os = response.getOutputStream();            WritableWorkbook wwb = Workbook.createWorkbook(os);            WritableSheet ws = wwb.createSheet("Sheet1", 0);            WritableFont wfc = new WritableFont(WritableFont.ARIAL, 8,                      WritableFont.BOLD, false, UnderlineStyle.NO_UNDERLINE,                      Colour.BLACK);            WritableCellFormat wcfFC = new WritableCellFormat(wfc);             Label label1 = new Label(0, 0, "物料编号", wcfFC);            ws.addCell(label1);            Label label2 = new Label(1, 0, "物料名称", wcfFC);            ws.addCell(label2);            Label label3 = new Label(2, 4, "规格型号", wcfFC);            ws.addCell(label3);            Label label4 = new Label(3, 0, "封装", wcfFC);            ws.addCell(label4);            Label label5 = new Label(4, 0, "单位", wcfFC);            ws.addCell(label5);            Label label6 = new Label(5, 0, "子BOM编号", wcfFC);            ws.addCell(label6);            Label label7 = new Label(6, 0, "子BOM名称", wcfFC);            ws.addCell(label7);            Label label8 = new Label(7, 0, "子项数量", wcfFC);            ws.addCell(label8);            Label label9 = new Label(8, 0, "仓库名称", wcfFC);            ws.addCell(label9);   Resultobj rt=bg.searchBOM(bomId);    for(int i=1;i<rt.getRows();i++){    Label name = new Label(0, i, rt.getCell("CODE", i));                      ws.addCell(name);                      Label num = new Label(1, i, rt.getCell("SHORTNAME", i));                      ws.addCell(num);                      Label num2 = new Label(2, i, rt.getCell("STYLE", i));                      ws.addCell(num2);                     Label num3 = new Label(3, i, rt.getCell("APPROVALNO", i));                      ws.addCell(num3);                     Label num4 = new Label(4, i, rt.getCell("Name", i));                      ws.addCell(num4);                     Label num5 = new Label(5, i, rt.getCell("SUBBOMCODE", i));                      ws.addCell(num5);                     Label num6 = new Label(6, i, rt.getCell("SUBBOMNAME", i));                      ws.addCell(num6);                     Label num7 = new Label(7, i, rt.getCell("STANDBATCH", i));                      ws.addCell(num7);                     Label num8 = new Label(8, i, rt.getCell("storeName", i));                      ws.addCell(num8);   }//关闭操作            wwb.write();            wwb.close();            os.close();      } catch (IOException e) {            // TODO Auto-generated catch block            e.printStackTrace();          } catch (RowsExceededException e) {            // TODO Auto-generated catch block            e.printStackTrace();          } catch (WriteException e) {            // TODO Auto-generated catch block            e.printStackTrace();          } catch (GeneralException e) {// TODO Auto-generated catch blocke.printStackTrace();}   } 就完成  导出excel了.
页: [1]
查看完整版本: 数据库中数据,导出excel