Java中用POI實現將數據導出到Excel

一、前言

數據導出為Excel在我們寫項目的過程中經常用到

需要用到的jar包 poi-3.17.jar

二、具體實現步驟

//第一步創建一個webbook,對應一個Excel文件
	HSSFWorkbook wb=new HSSFWorkbook();
	//第二步,在webbook中添加一個sheet,對應Excel文件中的sheet
	HSSFSheet sheet=wb.createSheet("食物信息數據");
	//第三步,在sheet中添加表頭第0行
	HSSFRow row = sheet.createRow(0);
	//第四步,創建單元格,並設置表頭居中
	HSSFCellStyle style = wb.createCellStyle();
	style.setAlignment(HorizontalAlignment.CENTER);//居中格式
	HSSFCell cell = row.createCell(0);
	cell.setCellValue("編號");
	cell.setCellStyle(style);
	
	cell=row.createCell((short)1);
	cell.setCellValue("名稱");
	cell.setCellStyle(style);
	
	cell=row.createCell((short)2);
	cell.setCellValue("類型");
	cell.setCellStyle(style);
	
	cell=row.createCell((short)3);
	cell.setCellValue("單價");
	cell.setCellStyle(style);
	
	cell=row.createCell((short)4);
	cell.setCellValue("庫存");
	cell.setCellStyle(style);
	
	//第五步,寫入實體數據,從數據庫拿數據
	FoodController controller=new FoodController();
	List<Foods> foodsList = controller.foodsList(null, null);
	for (int i = 0; i < foodsList.size(); i++) {
		//創建單元格,並賦值
		row=sheet.createRow(i+1);
		Foods foods = foodsList.get(i);
		row.createCell((short)0).setCellValue(foods.getId());
		row.createCell((short)1).setCellValue(foods.getName());
		row.createCell((short)2).setCellValue(foods.getType());
		row.createCell((short)3).setCellValue(foods.getPrice());
		row.createCell((short)4).setCellValue(foods.getNum());
	}
	//第六步,下載Excel
	OutputStream out=null;
	out=response.getOutputStream();
	String fileName="食物信息.xls";
	response.setContentType("application/x-=msdownload");
	response.setHeader("Content-Disposition", "attachment; filename="
			+URLEncoder.encode(fileName, "UTF-8"));
	wb.write(out);

三、實現效果圖

導出成功後數據成功顯示

在這裡插入圖片描述

到此這篇關於Java中用POI實現將數據導出到Excel的文章就介紹到這瞭,更多相關java數據導出到Excel內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀:

    None Found