java导入Excel表格
像我们日常开发中,我们常常有查询到一些我们需要的打印的数据的话,我们往往先要导入excel表格或者Words文档。
方便我们来导入电脑然后进行打印。我这边以导入Excel表格为例。
pom.xml的配置相关依赖
<!--导入excel表格所依赖的jar--> <dependencies> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.9</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>3.9</version> </dependency>
-----------------------------------------------------------------------------
Controller相关的控制层的代码
/* *将客房信息导入excel表格 * */ @RequestMapping(value = "/roomExcelDownloads",method = RequestMethod.GET) public void downloadAllClassmate(HttpServletResponse response)throws IOException{ HSSFWorkbook workbook=new HSSFWorkbook(); HSSFSheet sheet=workbook.createSheet("客房信息表"); List<HotelRoom> classmateList=hotelRoomService.findAll(); String fileName="hotelRoom"+".xls";//设置导出的文件名字 int rowNum=1; String [] headers={"房间编号","房间名称","层数","房间类型","相关信息"}; //headers表示excel表中第一行的表头 HSSFRow row=sheet.createRow(0); //excel表中添加表头 for(int i=0;i<headers.length;i++){ HSSFCell cell=row.createCell(i); HSSFRichTextString text=new HSSFRichTextString(headers[i]); cell.setCellValue(text); } //在表中存放查询的数据放入对应的列 for(HotelRoom hotelRoom:classmateList){ HSSFRow row1=sheet.createRow(rowNum); row1.createCell(0).setCellValue(hotelRoom.getRoomNumber()); row1.createCell(1).setCellValue(hotelRoom.getRoomName()); row1.createCell(2).setCellValue(hotelRoom.getLayer()); row1.createCell(3).setCellValue(hotelRoom.getRoomType()); row1.createCell(4).setCellValue(hotelRoom.getDescription()); rowNum++; } response.setContentType("application/octet-stream"); response.setHeader("Content-disposition","attachment;filename="+fileName); response.flushBuffer(); workbook.write(response.getOutputStream()); }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统