javaweb导出excel
时间: 2023-07-28 18:09:10 浏览: 54
在JavaWeb中导出Excel文件,可以使用Apache POI库来完成。以下是一个简单的示例代码:
```java
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.OutputStream;
public class ExcelExportServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
response.setHeader("Content-Disposition", "attachment; filename=\"example.xlsx\"");
try (Workbook workbook = new XSSFWorkbook()) {
Sheet sheet = workbook.createSheet("Sheet1");
// 创建表头
Row headerRow = sheet.createRow(0);
headerRow.createCell(0).setCellValue("姓名");
headerRow.createCell(1).setCellValue("年龄");
headerRow.createCell(2).setCellValue("性别");
// 填充数据
Row dataRow1 = sheet.createRow(1);
dataRow1.createCell(0).setCellValue("张三");
dataRow1.createCell(1).setCellValue(25);
dataRow1.createCell(2).setCellValue("男");
Row dataRow2 = sheet.createRow(2);
dataRow2.createCell(0).setCellValue("李四");
dataRow2.createCell(1).setCellValue(30);
dataRow2.createCell(2).setCellValue("女");
// 输出到响应流
try (OutputStream outputStream = response.getOutputStream()) {
workbook.write(outputStream);
}
}
}
}
```
以上代码是一个Servlet,当请求该Servlet时,会生成一个简单的Excel文件并将其导出到浏览器下载。你可以根据自己的需求修改表头和数据的内容。记得在你的JavaWeb项目中引入Apache POI库的依赖。