分享一个关于下载加密excel的方法;
核心思想就是将workbook的数据流到内容,通过POIFSFileSystem进行包装加密,最终将数据流写到response流里面;
关于代码中的writer是引用hutool的操作excel的工具类;大家不必在此费脑哦
后续博主可以再写一个完整的demo
@Override
public boolean downloadExcel(ExcelWriter writer, String password, String fileName, String fileSuffix) {
if (Objects.isNull(writer) || StringUtils.isAnyBlank( fileName, fileSuffix)) {
log.error("ExcelServiceImpl downloadEncryptExcel params is null!");
return false;
}
HttpServletResponse response = ((ServletRequestAttributes) (RequestContextHolder.currentRequestAttributes())).getResponse();
if (Objects.isNull(response)) {
log.error("ExcelServiceImpl downloadExcel fail,response is null!");
return false;
}
boolean result = false;
ServletOutputStream out = null;
try {
// Stri