<!--alibaba easyexcel-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>${easyexcel.version}</version>
</dependency>
@Data
@Entity
@Table(name = "vw_base_info")
public class VwBaseInfo implements Serializable {
@ExcelIgnore
private static final long serialVersionUID = 7255976442991327780L;
@Id
@ExcelIgnore
@Column(name = "ID")
private String id;
/**
* 行政区划名称
*/
@ExcelProperty("地区")
@Column(name = "ADMIN_DIV_NAME")
private String adminDivName;
/**
* 河流长度
*/
@ExcelProperty({"河道","长度"})
@Column(name = "RIVER_LENGTH")
private Double riverLength;
/**
* 河流水域面积
*/
@ExcelProperty({"河道","面积(k㎡)"})
@Column(name = "RIVER_AREA")
private Double riverArea;
}
@Override
public void exportExcel(HttpServletResponse response, Long year, String adcd) throws IOException {
response.setContentType("application/vnd.ms-excel");
response.setCharacterEncoding("utf-8");
List<VwBaseInfo> data = findByYearAndAdcd(year, adcd);
String fileName = year + "年基础信息" + System.currentTimeMillis() + ".xlsx";
String file = URLEncoder.encode(fileName, "UTF-8");
response.setHeader("Content-disposition", "attachment;filename=" + file);
EasyExcel.write(response.getOutputStream(), VwBaseInfo.class).sheet("sheet1").doWrite(data);
}
//导出图片
for (VwDynamicVideo vwDynamicVideo : list) {
String shotUrl = vwDynamicVideo.getShotUrl();
if (!StringUtils.isEmpty(shotUrl)) {
File file = new File(uploadFileDir + shotUrl);
if (file.exists()) {
vwDynamicVideo.setFile(file);
}
}
}
//通过模板导出 public void exportCheckList(HttpServletResponse response, String adcd。。。) throws IOException { List<VwPersonInfo> list = list(adcd,。。。); InputStream resourceAsStream = this.getClass().getResourceAsStream("/templates/person.xlsx"); response.setContentType("application/vnd.ms-excel"); response.setCharacterEncoding("utf-8"); String fileName = System.currentTimeMillis() + ".xlsx"; String file = URLEncoder.encode(fileName, "UTF-8"); response.setHeader("Content-disposition", "attachment;filename=" + file); EasyExcel.write(response.getOutputStream()).withTemplate(resourceAsStream).sheet().doFill(list);
}