java使用poi实现excel导出

对于刚入门的小伙伴,对于excel的导出需要经常使用到,公司基本上都会有excel导出工具,然而对于还没工作的小伙伴,没有机会接触这些,恰好又不会写,可以借鉴一下,虽然代码有点多,但是简单,也能实现该功能。首先在这里我们用到两个jar包

<dependency>
 <groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>4.0.0</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>4.0.0</version>
</dependency>

版本号自己看着更改,接下来我们就要来说怎么来实现导出excel了,我们将查询到的结果放在一个list里面,将对应的值放进去,看如下代码

import cn.com.edu.nyist.biz.StudentBiz;
import cn.com.edu.nyist.biz.TClassBiz;
import cn.com.edu.nyist.biz.TeacherBiz;
import cn.com.edu.nyist.model.Student;
import cn.com.edu.nyist.model.TClass;
import cn.com.edu.nyist.model.Teacher;

@Controller
public class ExcelExportController {

	@Autowired
	private TeacherBiz teacherBiz;
	@Autowired
	private StudentBiz studentBiz;
	@Autowired
	private TClassBiz tClassBiz;
	
	@RequestMapping("exportTeacher")
	public void export(HttpServletRequest request,HttpServletResponse response) throws Exception {
		String file ="教师信息.xls";
		response.setContentType(request.getServletContext().getMimeType(file));
		response.setHeader("Content-Disposition",
				"attachment; filename=\"" + file + "\"; filename*=utf-8' ' " + URLEncoder.encode(file, "utf-8"));
		//声明一个工作簿
		HSSFWorkbook hwb = new HSSFWorkbook();
		//声明一个单子并命名
		HSSFSheet sheet = hwb.createSheet("教师信息");
		//给单子名称一个长度
		sheet.setDefaultColumnWidth((short)15);
		//生成一个样式
		HSSFCellStyle style = hwb.createCellStyle();
		//创建第一行(也可以成为表头)
		HSSFRow row = sheet.createRow(0);
		//样式字体居中
		//style.setAlignment(HSSFCellStyle.ALIGN_CENTER);
		//给表头第一行一次创建单元格
        HSSFCell cell = row.createCell((short) 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);
        List<Teacher> ls= teacherBiz.findAll();
		for(short i=0;i<ls.size();i++){
			row =sheet.createRow(i+1);
			row.createCell(0).setCellValue(ls.get(i).getName());
			row.createCell(1).setCellValue(ls.get(i).getNum());
			row.createCell(2).setCellValue(ls.get(i).getPubdate());
		}
		hwb.write(response.getOutputStream());
		hwb.close();
	}
}

所有东西照着抄就行,只需要把里面对应的数据修改一下即可,到这就能实现导出excel功能了,能用此实现功能的小伙伴欢迎评论转发

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值