找回密码
 立即注册

QQ登录

只需一步,快速开始

最佳答案
最佳答案
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-9-17 16:26:23
来自 4#
参考如下代码:
后端:
  1. @RequestMapping(value = "/exportExcel", method = RequestMethod.POST)
  2.         @ResponseBody
  3.         public ResponseEntity exportExcel() {
  4.                 ByteArrayOutputStream out = new ByteArrayOutputStream();
  5.                 Workbook myworkbook = new Workbook();
  6.                 IWorksheet worksheet = myworkbook.getActiveSheet();
  7.                 worksheet.getRange("A1").setValue("测试");
  8.                 myworkbook.save(out);
  9.                 byte[] contents = out.toByteArray();

  10.         HttpHeaders headers = new HttpHeaders();
  11.         ResponseEntity<byte[]> response = new ResponseEntity<>(contents, headers, HttpStatus.OK);
  12.         return response;
  13.                  
  14.         }
复制代码

前端:
  1. document.getElementById("export").onclick = function(){
  2.                 var xhr = new XMLHttpRequest();
  3.                 xhr.open('POST', "exportExcel", true);
  4.                 xhr.responseType = 'blob';   
  5.                 xhr.onload = function(e) {
  6.                         if (this.status == 200) {
  7.                                 var blob = this.response;
  8.                                 saveAs(blob,"export.xlsx");
  9.                         }       
  10.                 }
  11.                 xhr.send();
  12.             }
复制代码
回复 使用道具 举报
12
您需要登录后才可以回帖 登录 | 立即注册
返回顶部