springBoot整合easyPOI轻松实现Excel文件导出

首先吐槽以下!网上的很多经验要不就是缺信息,要不就是缺配置,反正总的来说,找了很久才实现的一个功能,今天分享给大家,让大家轻松完成导出Excel任务

非常感谢这位朋友的详细解答,最终实现了这个功能,朋友们可以去看看


 【工具篇】Excel文件导出从未如此简单——EasyPOI的使用


首先放下easyPOI文档    easyPOI文档

(1)用到的框架是easyPOI不知道的小伙伴可以去百度了解一下

maven导入依赖

    <!-- easyPOI -->
    <dependency>
      <groupId>cn.afterturn</groupId>
      <artifactId>easypoi-base</artifactId>
      <version>3.0.3</version>
    </dependency>
    <dependency>
      <groupId>cn.afterturn</groupId>
      <artifactId>easypoi-web</artifactId>
      <version>3.0.3</version>
    </dependency>
    <dependency>
      <groupId>cn.afterturn</groupId>
      <artifactId>easypoi-annotation</artifactId>
      <version>3.0.3</version>
    </dependency>

(2)相应的controller层配置(这里的业务主要交给service层进行操作)

 @RequestMapping(value = "exportStuInfoExcel")
   @ResponseBody
   public void exportStuInfoExcel(HttpServletResponse response){
        stuService.downExcel(response);
   }

(3)相应的service层配置

    public void downExcel(HttpServletResponse response){
        List<Student> list = getAllStu();    
        System.out.println(list.toString());
        //指定列表标题和工作表名称
        ExportParams params = new ExportParams("学生信息表","学生");
        Workbook workbook = ExcelExportUtil.exportExcel(params,Student.class,list);
        response.setHeader("content-Type","application/vnd.ms-excel");
        response.setHeader("Content-Disposition","attachment;filename="+System.currentTimeMillis()+".xls");
        response.setCharacterEncoding("UTF-8");
        try {
            workbook.write(response.getOutputStream());
            workbook.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

上面的list是我自己创建的方法,也在service层内,可以直接调用

public List<Student> getAllStu(){
        return stuRepository.findAll();
    }

另外----上面的这个方法中的findAll()用的是JPA有兴趣的朋友可以去学习一下

扫描二维码关注公众号,回复: 5454894 查看本文章

(4)对应的jsp页面

<div><a href="/student/exportStuInfoExcel">导出Excel表格</a></div>

猜你喜欢

转载自blog.csdn.net/zhaoyy0513/article/details/81037787