controller层实现
//下载课程分类的数据库读到的Excel文件
//produces="application/octet-stream" 使用swagger测试时必须加这个注解 ,不然文件打不开
@ApiOperation(value = "下载课程分类的数据库读到的Excel文件",produces="application/octet-stream")//produces ==> 指定返回值类型
@GetMapping("/downloadSubjectUpfile")
public void downloadSubjectUpfile(HttpServletResponse response){
String filename = "List.xlsx";
List<EduSubject> list = eduSubjectService.list(null);//查询结果封装到list中
Class<EduSubject> aClass = EduSubject.class;
try {
//设置响应相关信息
response.setContentType("application/vnd.ms-excel");
response.setCharacterEncoding("utf-8");
response.setHeader("Content-Disposition", "attachment; filename=" + filename);
response.setHeader("Access-Control-Expose-Headers", "Content-Disposition");
//写入到响应流
EasyExcel.write(response.getOutputStream(), aClass).sheet("sheet1").doWrite(list);
} catch (Exception e) {
e.printStackTrace();
}
}
前端实现
elementui
参考链接
controller层实现
https://www.jianshu.com/p/6b8aa5e1d5efhttps://www.jianshu.com/p/6b8aa5e1d5ef解决swagger下载打不开