导出
一、excel格式导出至response
1、List<对象>导出
Map<String, String> headerAlias = new LinkedHashMap<String, String>();
headerAlias.put("数据列一对象英文名称", "显示的中文名称");
...
BigExcelWriter excelWriter = new BigExcelWriter();
excelWriter.setHeaderAlias(headerAlias);
excelWriter.write(list);
if (null != response) {
response.addHeader("Content-Type", "application/vnd.ms-excel;charset=UTF-8");
response.addHeader("Content-Disposition", excelWriter.getDisposition("excel表名", StandardCharsets.UTF_8));
}
excelWriter.flush(response.getOutputStream(), true);
excelWriter.close();
2、json对象不固定列导出
HttpServletResponse response = ((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()).getResponse();
List<List<String>> resultListList = new ArrayList<>();
List<String> resultHeadList = new ArrayList<>();
resultHeadList.add("NAME");
...
for (int j = 0; j < jsonObj.size(); j++) {
JSONArray jsonArray = jsonObj.getJSONArray("num" + j);
List<String> resultList = new ArrayList<>();
if (j == 0) {
resultList.add("固定列的相同取值");
...
} else {
resultList.add("");
...
}
for (int i = 0; i < jsonArray.size(); i++) {
JSONObject obj = jsonArray.getJSONObject(i);
String name = StrUtil.trimToEmpty(obj.getStr("name"));
String value = StrUtil.trimToEmpty