easyexcel web导出实现
时间: 2023-08-19 13:04:22 浏览: 106
web中导出excel案例,源码案例
EasyExcel 是一款基于Java的简单、高效的 Excel 文件读写工具,可以用于在后端实现 Excel 文件的导入和导出功能。EasyExcel 提供了一种简单的方式来实现 Web 导出功能,下面是一个实现示例:
1. 首先,确保你的项目已经引入了 EasyExcel 的依赖。可以在 Maven 或者 Gradle 配置文件中添加以下依赖:
```xml
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>2.2.10</version>
</dependency>
```
2. 创建一个 Controller 类,并添加一个导出 Excel 的接口方法。例如:
```java
import com.alibaba.excel.EasyExcel;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.List;
@Controller
@RequestMapping("/excel")
public class ExcelController {
@GetMapping("/export")
@ResponseBody
public void exportExcel(HttpServletResponse response) throws IOException {
// 创建数据源,这里使用一个示例数据
List<User> userList = new ArrayList<>();
userList.add(new User("张三", 18));
userList.add(new User("李四", 20));
userList.add(new User("王五", 22));
// 设置响应头
response.setContentType("application/vnd.ms-excel");
response.setCharacterEncoding("utf-8");
String fileName = URLEncoder.encode("用户信息表", "UTF-8");
response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx");
// 使用 EasyExcel 导出 Excel 文件
EasyExcel.write(response.getOutputStream(), User.class).sheet("用户信息").doWrite(userList);
}
// 定义一个简单的 User 类,用于演示
public static class User {
private String name;
private Integer age;
public User(String name, Integer age) {
this.name = name;
this.age = age;
}
// getter 和 setter 方法省略
}
}
```
3. 在浏览器中访问 `/excel/export` 接口,即可下载导出的 Excel 文件。
以上就是使用 EasyExcel 实现 Web 导出 Excel 的简单示例。你可以根据自己的需求,调整数据源和导出的 Excel 格式等内容。希望对你有帮助!
阅读全文