java 原生response导出excel
在Java中,你可以使用Apache POI库来导出Excel文件。以下是一个示例代码:
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
public class ExcelExporter {
public void exportToExcel(HttpServletResponse response) throws IOException {
Workbook workbook = new XSSFWorkbook();
Sheet sheet = workbook.createSheet("Sheet1");
// 创建表头
Row headerRow = sheet.createRow(0);
Cell headerCell1 = headerRow.createCell(0);
headerCell1.setCellValue("Column1");
Cell headerCell2 = headerRow.createCell(1);
headerCell2.setCellValue("Column2");
// 创建数据行
Row dataRow = sheet.createRow(1);
Cell dataCell1 = dataRow.createCell(0);
dataCell1.setCellValue("Data1");
Cell dataCell2 = dataRow.createCell(1);
dataCell2.setCellValue("Data2");
// 设置响应头
response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
response.setHeader("Content-Disposition", "attachment; filename=example.xlsx");
// 写入响应流
workbook.write(response.getOutputStream());
workbook.close();
}
}
在上面的示例中,我们创建了一个ExcelExporter类,其中的exportToExcel方法用于导出Excel文件。该方法接收一个HttpServletResponse对象作为参数,以便将Excel文件写入响应流中。
在方法中,我们首先创建一个Workbook对象,这里使用XSSFWorkbook来创建一个.xlsx格式的工作簿。然后,我们创建一个新的工作表,并设置表头和数据行。接下来,我们设置响应头,将文件类型设置为Excel,并指定文件名。最后,我们将工作簿写入响应流,并关闭工作簿。
要使用这个方法,你只需要在你的Servlet或Controller中调用exportToExcel方法,并将HttpServletResponse对象传递给它,例如:
public class MyServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
ExcelExporter exporter = new ExcelExporter();
exporter.exportToExcel(response);
}
}
当你访问该Servlet时,它将生成一个名为example.xlsx的Excel文件,并将其作为响应发送给客户端
原文地址: https://www.cveoy.top/t/topic/ieHZ 著作权归作者所有。请勿转载和采集!