@RequestMapping("downLoad")
public void downLoad(Offsupervise off1,HttpServletRequest request,HttpServletResponse response,HttpSession session) throws UnsupportedEncodingException{ User user=(User) session.getAttribute(Const.SESSION_USER);
String excePath1=servletContext.getRealPath("excel");
System.out.println("---excePath1:"+excePath1);
String excePath=excePath1.replaceAll("\\\\", "/");
System.out.println("---excePath:"+excePath);
String servletPath=request.getSession().getServletContext().getRealPath("/");
System.out.println("servletPath:"+servletPath);
System.out.println(excePath+"/030013101154183F20143Z000.xls");
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8"); FileOutputStream out;
Offsupervise off=null;
if(null!=off1){
System.out.println(1);
off=offsuperviseService.getOffsuperviseByOrangId(off1);
off.setOrgan_id(off1.getOrgan_id());
off.setYear(off1.getYear());
off.setQuarter(off1.getQuarter());
} response.setContentType("APPLICATION/OCTET-STREAM");
response.setHeader("Content-Disposition", "attachment;filename=Excel.zip");
response.setHeader("Cache-Control", "max-age=0");
try {
ZipOutputStream zos = new ZipOutputStream(response.getOutputStream());
POIFSFileSystem fs1 = new POIFSFileSystem(new FileInputStream(new File(excePath+"/030013101154183F20143Z000.xls")));
POIFSFileSystem fs2=new POIFSFileSystem(new FileInputStream(new File(excePath+"/030013101154183G20143Z000.xls")));
POIFSFileSystem fs3=new POIFSFileSystem(new FileInputStream(new File(excePath+"/030013101154183H20143Z000.xls")));
POIFSFileSystem fs4=new POIFSFileSystem(new FileInputStream(new File(excePath+"/030013101154183I20143Z000.xls")));
POIFSFileSystem fs5=new POIFSFileSystem(new FileInputStream(new File(excePath+"/030013101154183J20143Z000.xls"))); String name1="030013101154183F"+off.getYear()+"3Z000.xls";
String name2="030013101154183G"+off.getYear()+"3Z000.xls";
String name3="030013101154183H"+off.getYear()+"3Z000.xls";
String name4="030013101154183I"+off.getYear()+"3Z000.xls";
String name5="030013101154183J"+off.getYear()+"3Z000.xls"; /*-----------------------操作识别客户表----------------------------------**/ HSSFWorkbook wb1=new HSSFWorkbook(fs1);
HSSFSheet sheet1=wb1.getSheetAt(0); HSSFCell c11=sheet1.getRow(1).getCell((short) 5);
c11.setCellValue(off.getYear()); HSSFCell c12=sheet1.getRow(1).getCell((short) 7);
c12.setCellValue(off.getQuarter()); HSSFCell c13=sheet1.getRow(2).getCell((short) 7);
if(off.getData30().equals("0")){
c13.setCellValue("是");
}else {
c13.setCellValue("否");
} //制表人
sheet1.getRow(3).getCell((short) 1).setCellValue(user.getName());
//联系电话
sheet1.getRow(3).getCell((short) 3).setCellValue(user.getTelphone());
//对公总数
sheet1.getRow(6).getCell((short) 3).setCellValue(off.getData1());
//对公通过第三方识别数
sheet1.getRow(8).getCell((short) 3).setCellValue(off.getData2());
//对公与离岸中心有关的
sheet1.getRow(9).getCell((short) 3).setCellValue(off.getData21());
//对公受益人数
sheet1.getRow(10).getCell((short) 3).setCellValue(off.getData22()); HSSFCell c14=sheet1.getRow(18).getCell((short) 3);
c14.setCellValue(off.getData3()); HSSFCell c15=sheet1.getRow(21).getCell((short) 3);
c15.setCellValue(off.getData18());
//其中他人代理的
sheet1.getRow(22).getCell((short)3).setCellValue(off.getData24()); HSSFCell c16=sheet1.getRow(23).getCell((short) 3);
c16.setCellValue(off.getData17()); //其中他人代理的
sheet1.getRow(24).getCell((short)3).setCellValue(off.getData25()); HSSFCell c17=sheet1.getRow(32).getCell((short) 3);
c17.setCellValue(off.getData30()); zos.putNextEntry(new ZipEntry(name1));
// zos.write(wb1.getBytes());
wb1.write(zos); // out=new FileOutputStream("E://"+name1);
// wb1.write(out);
// out.close();
/*----------------------操作重新识别客户-----------------------------------**/
HSSFWorkbook wb2=new HSSFWorkbook(fs2);
HSSFSheet sheet2=wb2.getSheetAt(0); HSSFCell c21=sheet2.getRow(1).getCell((short) 5);
c21.setCellValue(off.getYear()); HSSFCell c22=sheet2.getRow(1).getCell((short) 7);
c22.setCellValue(off.getQuarter()); HSSFCell c23=sheet2.getRow(2).getCell((short) 7);
if(off.getData31().equals("0")&&off.getData33().equals("0")){
c23.setCellValue("是");
}else {
c23.setCellValue("否");
}
//制表人
sheet2.getRow(3).getCell((short) 1).setCellValue(user.getName());
//联系电话
sheet2.getRow(3).getCell((short) 3).setCellValue(user.getTelphone()); sheet2.getRow(7).getCell((short) 1).setCellValue(off.getData4());
sheet2.getRow(7).getCell((short) 2).setCellValue(off.getData5()); HSSFCell c24=sheet2.getRow(7).getCell((short) 3);
c24.setCellValue(off.getData6()); sheet2.getRow(7).getCell((short) 4).setCellValue(off.getData26());
sheet2.getRow(7).getCell((short) 5).setCellValue(off.getData27()); //其中查实
sheet2.getRow(8).getCell((short) 1).setCellValue(off.getData4());
sheet2.getRow(8).getCell((short) 2).setCellValue(off.getData5());
sheet2.getRow(8).getCell((short) 3).setCellType(1);
sheet2.getRow(8).getCell((short) 3).setCellValue(off.getData6());
sheet2.getRow(8).getCell((short) 4).setCellValue(off.getData26());
sheet2.getRow(8).getCell((short) 5).setCellValue(off.getData27()); sheet2.getRow(13).getCell((short) 1).setCellValue(off.getData7());
sheet2.getRow(13).getCell((short) 2).setCellValue(off.getData8());
HSSFCell c25=sheet2.getRow(13).getCell((short) 3);
c25.setCellValue(off.getData9());
sheet2.getRow(13).getCell((short) 4).setCellValue(off.getData28());
sheet2.getRow(13).getCell((short) 5).setCellValue(off.getData29()); //其中查实
sheet2.getRow(14).getCell((short) 1).setCellValue(off.getData7());
sheet2.getRow(14).getCell((short) 2).setCellValue(off.getData8());
sheet2.getRow(14).getCell((short) 3).setCellType(1);
sheet2.getRow(14).getCell((short) 3).setCellValue(off.getData9());
sheet2.getRow(14).getCell((short) 4).setCellValue(off.getData28());
sheet2.getRow(14).getCell((short) 5).setCellValue(off.getData29()); sheet2.getRow(17).getCell((short) 1).setCellValue(off.getData31());
sheet2.getRow(17).getCell((short) 2).setCellType(1);
sheet2.getRow(17).getCell((short) 2).setCellValue(off.getData32());
HSSFCell c26=sheet2.getRow(17).getCell((short) 3);
System.out.println("type:"+c26.getCellType());
c26.setCellType(1);
c26.setCellValue(off.getData33());
sheet2.getRow(17).getCell((short) 4).setCellType(1);
sheet2.getRow(17).getCell((short) 4).setCellValue(off.getData34());
sheet2.getRow(17).getCell((short) 5).setCellType(1);
sheet2.getRow(17).getCell((short) 5).setCellValue(off.getData35()); //其中查实
sheet2.getRow(18).getCell((short) 1).setCellValue(off.getData31());
sheet2.getRow(18).getCell((short) 2).setCellType(1);
sheet2.getRow(18).getCell((short) 2).setCellValue(off.getData32());
sheet2.getRow(18).getCell((short) 3).setCellType(1);
sheet2.getRow(18).getCell((short) 3).setCellValue(off.getData33());
sheet2.getRow(18).getCell((short) 4).setCellType(1);
sheet2.getRow(18).getCell((short) 4).setCellValue(off.getData34());
sheet2.getRow(18).getCell((short) 5).setCellType(1);
sheet2.getRow(18).getCell((short) 5).setCellValue(off.getData35()); zos.putNextEntry(new ZipEntry(name2));
// zos.write(wb2.getBytes());
wb2.write(zos);
// out=new FileOutputStream("E://"+name2); // wb2.write(out);
// out.close();
/*----------------------操作涉及可疑交易识别情况-----------------------------------**/
HSSFWorkbook wb3=new HSSFWorkbook(fs3);
HSSFSheet sheet3=wb3.getSheetAt(0); HSSFCell c31=sheet3.getRow(1).getCell((short) 5);
c31.setCellValue(off.getYear()); HSSFCell c32=sheet3.getRow(1).getCell((short) 7);
c32.setCellValue(off.getQuarter()); HSSFCell c33=sheet3.getRow(2).getCell((short) 7);
c33.setCellValue("是");
// if(off.getData10().equals("0")&&off.getData12().equals("0")){
// c33.setCellValue("是");
// }else {
// c33.setCellValue("否");
// }
//制表人
sheet3.getRow(3).getCell((short) 1).setCellValue(user.getName());
//联系电话
sheet3.getRow(3).getCell((short) 3).setCellValue(user.getTelphone());
// HSSFCell c34=sheet3.getRow(7).getCell((short) 0);
// c34.setCellValue(off.getData10());
////
// HSSFCell c35=sheet3.getRow(7).getCell((short) 3);
// c35.setCellValue(off.getData12()); zos.putNextEntry(new ZipEntry(name3));
// zos.write(wb3.getBytes());
wb3.write(zos); // out=new FileOutputStream("E://"+name3);
// wb3.write(out);
// out.close();
/*----------------------金融机构可疑交易报告情况统计表-----------------------------------**/
HSSFWorkbook wb4=new HSSFWorkbook(fs4);
HSSFSheet sheet4=wb4.getSheetAt(0); HSSFCell c41=sheet4.getRow(1).getCell((short) 5);
c41.setCellValue(off.getYear()); HSSFCell c42=sheet4.getRow(1).getCell((short) 7);
c42.setCellValue(off.getQuarter()); HSSFCell c43=sheet4.getRow(2).getCell((short) 7);
if(off.getData13().equals("0")&&off.getData14().equals("0")&&off.getData15().equals("0")&&off.getData16().equals("0")){
c43.setCellValue("是");
}else {
c43.setCellValue("否");
}
//制表人
sheet4.getRow(3).getCell((short) 1).setCellValue(user.getName());
//联系电话
sheet4.getRow(3).getCell((short) 3).setCellValue(user.getTelphone()); // HSSFCell c44=sheet4.getRow(5).getCell((short) 2);
// c44.setCellValue(off.getData19());
////
// HSSFCell c45=sheet4.getRow(5).getCell((short) 4);
// c45.setCellValue(off.getData20());
//
sheet4.getRow(10).getCell((short) 1).setCellValue(off.getData13());
sheet4.getRow(10).getCell((short) 2).setCellValue(off.getData14());
HSSFCell c46=sheet4.getRow(10).getCell((short) 3);
c46.setCellValue(off.getData15());
//
HSSFCell c47=sheet4.getRow(10).getCell((short) 4);
c47.setCellValue(off.getData16()); zos.putNextEntry(new ZipEntry(name4));
// zos.write(wb4.getBytes());
wb4.write(zos);
// out=new FileOutputStream("E://"+name4);
// wb4.write(out);
// out.close();
/*----------------------金融机构协助公安机关、其他机关打击洗钱活动情况-----------------------------------**/
HSSFWorkbook wb5=new HSSFWorkbook(fs5);
HSSFSheet sheet5=wb5.getSheetAt(0); HSSFCell c51=sheet5.getRow(1).getCell((short) 5);
c51.setCellValue(off.getYear()); HSSFCell c52=sheet5.getRow(1).getCell((short) 7);
c52.setCellValue(off.getQuarter()); //制表人
sheet5.getRow(3).getCell((short) 1).setCellValue(user.getName());
//联系电话
sheet5.getRow(3).getCell((short) 3).setCellValue(user.getTelphone());
zos.putNextEntry(new ZipEntry(name5));
// zos.write(wb5.getBytes());
wb5.write(zos);
// out=new FileOutputStream("E://"+name5);
// wb5.write(out);
// out.close();
zos.flush();
zos.closeEntry();
zos.close(); } catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
request.setAttribute("data",off); }

从webRoot中下载Excel的更多相关文章

  1. vue中下载excel的使用,后端链接两种情况,一个是链接,一个是文件流

    vue中下载excel使用 一.这是第一种情况,后台链接地址返回的是一个url,这个时候我只要在导出按钮上绑定exportData()这个事件方法就好了 exportData() {     this ...

  2. C# 中从程序中下载Excel模板

    方法一: #region 下载模板 /// <summary> /// 下载模板 /// </summary> /// <param name="sender& ...

  3. java的poi技术下载Excel模板上传Excel读取Excel中内容(SSM框架)

    使用到的jar包 JSP: client.jsp <%@ page language="java" contentType="text/html; charset= ...

  4. DevExpress中GridView Excel下载

    DevExpress中GridView提供了许多Excel下载的方法,如gridView.ExportToExcelOld(sfdExcelDown.FileName); 在修改Bug时,遇到这样问题 ...

  5. 在ASP.NET MVC中利用Aspose.cells 将查询出的数据导出为excel,并在浏览器中下载。

    正题前的唠叨 本人是才出来工作不久的小白菜一颗,技术很一般,总是会有遇到一些很简单的问题却不知道怎么做,这些问题可能是之前解决过的.发现这个问题,想着提升一下自己的技术水平,将一些学的新的'好'东西记 ...

  6. django 中下载文件与下载保存为excel

    一.django 中下载文件 在实际的项目中很多时候需要用到下载功能,如导excel.pdf或者文件下载,当然你可以使用web服务自己搭建可以用于下载的资源服务器,如nginx,这里我们主要介绍dja ...

  7. 利用Aspose.cells 将查询出的数据导出为excel,并在浏览器中下载。

    正题前的唠叨 本人是才出来工作不久的小白菜一颗,技术很一般,总是会有遇到一些很简单的问题却不知道怎么做,这些问题可能是之前解决过的.发现这个问题,想着提升一下自己的技术水平,将一些学的新的‘好’东西记 ...

  8. 一文解决Vue中实现 Excel下载到本地以及上传Excel

    相信大家在项目中经常会遇到一些上传下载文件的相关功能,本文就Excel的相关功能进行简述: 咱直接看代码: <div class="import-main-content"& ...

  9. 使用开源免费类库在.net中操作Excel

    自从上次找到NPOI之后,根据园友提供的线索以及Google,又找到了一些开源免费的类库,所以都简单体验了一遍. 主要找到以下类库: MyXls(http://sourceforge.net/proj ...

随机推荐

  1. C++和C代码互相调用是不可避免的

    C++ 编译器能够兼容C语言发编译方式 C++编译器会优先使用C++ 编译的方式 extern 关键字能强制让C++编译器进行C方式的编译 external “C” { //do C-style co ...

  2. 关于Matrix的深入理解(对应值的功能)

    matrix是css3里面transform的一个集成表达式,它是以一个矩阵的方式来计算 transform:translate(apx,bpx)位移 transform: scale(a,b) 放缩 ...

  3. ant build utf-8

    使用Ant编译过程中,报error: unmappable character for encoding UTF8 最简单的方法是在Build.xml文件中,在所有出现Javac的地方,增加一个选项: ...

  4. 关于IOS的证书、App ID、设备、Provisioning Profile详述

    首先,打开developer.apple.com ,在iOS Dev Center打开Certificates, Indentifiers & Profiles认识一下基本结构.列表就包含了开 ...

  5. 纯CSS实现tooltip提示框,CSS箭头及形状

    本片介绍仅用CSS做出tooltip那样的提示框及箭头等形状! 首先介绍一下CSS:after选择器 定义和用法:(参考w3school:after选择器) :after选择器在被选元素的内容后面插入 ...

  6. 【C语言学习笔记】存储类、链接和内存管理

    因为对内存管理部分一直没有很清楚的思路,所以一直在找资料想系统看一下这部分的内容.在C primer plus里看到了这一章,虽然大多都是心知肚明的东西,但是还是很多概念性系统性的东西让我眼前一亮,把 ...

  7. TCP 长连接与短连接的区别

    TCP连接 当网络通信时采用TCP协议时,在真正的读写操作之前,server与client之间必须建立一个连接,当读写操作完成后,双方不再需要这个连接时它们可以释放这个连接,连接的建立是需要三次握手的 ...

  8. Android中取消GridView & ListView默认的点击背景色

    方法一: gridView.setSelector(new ColorDrawable(Color.TRANSPARENT)); listView.setSelector(new ColorDrawa ...

  9. Java基础之在窗口中绘图——渐变填充(GradientApplet 1)

    Applet程序. import javax.swing.*; import java.awt.*; import java.awt.geom.*; @SuppressWarnings("s ...

  10. Hadoop+Spark:集群环境搭建

    环境准备: 在虚拟机下,大家三台Linux ubuntu 14.04 server x64 系统(下载地址:http://releases.ubuntu.com/14.04.2/ubuntu-14.0 ...