**JAVA简单快速导出EXCEL
直接上代码
一、先导入maven包
<!--junit4测试-->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>4.0.0</version>
</dependency>
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>4.5.2</version>
</dependency>
//员工导出方法
@ResponseBody
@RequestMapping(value = "employee1/export", method = RequestMethod.GET)
public void export(HttpServletResponse response ,HttpServletResponse request) throws Exception {
//查询后台数据库
List<Employee> empList = employeeService.findAll();
ArrayList<Employee> rows2 = CollUtil.newArrayList(empList);
// 通过工具类创建writer,默认创建xls格式
ExcelWriter writer = ExcelUtil.getWriter();
//自定义标题别名
writer.addHeaderAlias("username", "姓名");
writer.addHeaderAlias("password", "密码");
writer.addHeaderAlias("telphone", "电话");
writer.addHeaderAlias("address", "地址");
writer.addHeaderAlias("ordersNum", "订单编号");
writer.addHeaderAlias("deptId", "部门id");
writer.addHeaderAlias("deptName", "考试时间");
writer.addHeaderAlias("entrytime", "入职时间");
writer.addHeaderAlias("headImage", "头像");
writer.addHeaderAlias("sex", "性别");
writer.addHeaderAlias("salary", "工资");
writer.addHeaderAlias("state", "状态");
// 定义单元格背景色
StyleSet style = writer.getStyleSet();
// 第二个参数表示是否也设置头部单元格背景
style.setBackgroundColor(IndexedColors.GREEN, false);
//设置内容字体
Font font = writer.createFont();
font.setBold(true);
font.setColor(Font.COLOR_RED);
font.setItalic(true);
//第二个参数表示是否忽略头部样式
writer.getStyleSet().setFont(font, true);
//out为OutputStream,需要写出到的目标流
writer.setSheet("员工信息sheet表");
writer.merge(12, "员工信息表");
// 一次性写出内容,使用默认样式,强制输出标题
writer.write(rows2, true);
//解决中文乱码问题
String fileName = "员工信息导出标题";
fileName = fileName.replace(" ", "");
String userAgent = request.getHeader("user-agent").toLowerCase();
if (StringUtils.isBlank(fileName)) {
fileName = ShopHelper.getCurrentTimestamp().toString();
}
fileName = fileName + ".xls";
if (userAgent.contains("msie") || userAgent.contains("like gecko")) {
//win
fileName = URLEncoder.encode(fileName, "UTF-8");
} else {
fileName = new String(fileName.getBytes("UTF-8"), "iso-8859-1");
}
//response为HttpServletResponse对象
response.setContentType("application/vnd.ms-excel;charset=utf-8");
//test.xls是弹出下载对话框的文件名,不能为中文,中文请自行编码
response.setHeader("Content-Disposition", "attachment;filename=" + fileName);
ServletOutputStream out = response.getOutputStream();
writer.flush(out);
// 关闭writer,释放内存
writer.close();
//此处记得关闭输出Servlet流
IoUtil.close(out);
}