zoukankan      html  css  js  c++  java
  • 00006-java 下载一个excel模板(文件),前端layui按钮

    下载按钮:

    <button class="layui-btn layui-btn-sm" data-type="downTemplate">模板下载</button>
    

    对应方法:

    downTemplate:function () {
        window.open(ctx+"/download/template/customer");
    },
    

    java 控制层:

    
    import org.apache.commons.io.FileUtils;
    import org.apache.commons.io.IOUtils;
    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    import org.springframework.beans.factory.annotation.Value;
    import org.springframework.http.HttpHeaders;
    import org.springframework.http.HttpStatus;
    import org.springframework.http.MediaType;
    import org.springframework.http.ResponseEntity;
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.PathVariable;
    import org.springframework.web.bind.annotation.RequestMapping;
    import javax.servlet.http.HttpServletRequest;
    
    import java.io.File;
    import java.io.IOException;
    import java.io.InputStream;
    import java.net.URL;
    import java.net.URLConnection;
    
    
    @Controller
    @RequestMapping("/download")
    public class DownloadController {
    
       private Logger logger = LoggerFactory.getLogger(getClass());
    
    
       @RequestMapping(value = "/template/customer")
       public ResponseEntity<byte[]> downloadTemp(HttpServletRequest request) throws IOException {
          String path = request.getSession().getServletContext().getRealPath("/");
          String newFileName = "客户信息模板" + ".xlsx";
          String fileName = "customer.xlsx";
          File file = FileUtils.getFile(path, "template", fileName);
          HttpHeaders headers = new HttpHeaders();
          headers.setContentType(MediaType.APPLICATION_OCTET_STREAM);
          headers.setContentDispositionFormData("attachment", new String(
                newFileName.getBytes("gbk"), "iso-8859-1"));
          return new ResponseEntity<byte[]>(FileUtils.readFileToByteArray(file),
                headers, HttpStatus.OK);
       }
    
    }
    

    customer.xlsx 是放在webapp/template目录下。

  • 相关阅读:
    关于Manjaro+kde桌面Tim闪退的解决
    Manjaro-kde-18.1.3安装体验
    Ubuntu19.10安装
    OPPO R11刷机初体验
    Microsoft store应用商店打不开0x80131500
    提问回顾与个人总结
    OO第三单元总结
    OO第二单元总结
    软工案例分析作业
    OO第一单元总结
  • 原文地址:https://www.cnblogs.com/jianquan100/p/12919997.html
Copyright © 2011-2022 走看看