1.导入iop所需依赖包

  <!-- https://mvnrepository.com/artifact/org.apache.poi/poi 导入导出依赖包--><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>RELEASE</version></dependency>
</dependencies>

2.创建一个简单model类

package com.example.poiexcel.model;import lombok.Data;@Data
public class Student {private Integer Sno;private String Name;private String Age;public Student(Integer sno, String name, String age) {Sno = sno;Name = name;Age = age;}
}

3.编写Service层

package com.example.poiexcel.service;import com.example.poiexcel.model.Student;
import org.apache.poi.hssf.usermodel.*;
import org.springframework.stereotype.Service;import java.util.List;@Service
public class ExportService {String[] excelHeader = { "Sno", "Name", "Age"};  public HSSFWorkbook export(List<Student> list) {HSSFWorkbook wb = new HSSFWorkbook();HSSFSheet sheet = wb.createSheet("Student");HSSFRow row = sheet.createRow((int) 0);HSSFCellStyle style = wb.createCellStyle();style.setAlignment(HSSFCellStyle.ALIGN_CENTER);  for (int i = 0; i < excelHeader.length; i++) {  HSSFCell cell = row.createCell(i);cell.setCellValue(excelHeader[i]);cell.setCellStyle(style);  sheet.autoSizeColumn(i);  // sheet.SetColumnWidth(i, 100 * 256);  }  for (int i = 0; i < list.size(); i++) {  row = sheet.createRow(i + 1);  Student student = list.get(i);  row.createCell(0).setCellValue(student.getSno());  row.createCell(1).setCellValue(student.getName());  row.createCell(2).setCellValue(student.getAge());  }  return wb;}}

4.编写controller\

@Controller
public class ExportController {@Autowiredprivate ExportService exportService;@RequestMapping("/Index")public String ftlIndex() {System.out.println("fff");return "user/download";}@RequestMapping(value = "/excel/export")public void exportExcel(HttpServletRequest request, HttpServletResponse response) throws Exception {List<Student> list = new ArrayList<Student>();list.add(new Student(1000,"zhangsan","20"));list.add(new Student(1001,"lisi","23"));list.add(new Student(1002,"wangwu","25"));HSSFWorkbook wb = exportService.export(list);response.setContentType("application/vnd.ms-excel");response.setHeader("Content-disposition", "attachment;filename=学生服务表.xls");OutputStream ouputStream = response.getOutputStream();wb.write(ouputStream);ouputStream.flush();ouputStream.close();}

注意注解类不是@restcontller,是@controller。这是为跳转界面准备的。

5.编写html界面

<!DOCTYPE html>
<html>
<head><meta charset="utf-8"><title>layui</title><meta name="renderer" content="webkit"><meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"><meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"><link rel="stylesheet" href="layui\css\layui.css" media="all"><!-- 注意:如果你直接复制所有代码到本地,上述css路径需要改成你本地的 -->
</head>
<body>
<form action="/excel/export"><fieldset class="layui-elem-field site-demo-button" style="margin-top: 30px;"><legend>Excel导入导出</legend><div><button class="layui-btn" lay-submit="" lay-filter="studentForm">导出测试信息</button></div></fieldset>
</form>
</body>
</html>

存放位置我是springboot构建的所以在templates下新建user包放进HTML文件。如下图:

最后结果:

iop导出excel,简单例子。相关推荐

  1. aspose.cells html excel导出,C#使用Aspose.Cells导出Excel简单实现

    首先,需要添加引用Aspose.Cells.dll,官网下载地址:http://downloads.aspose.com/cells/net 将DataTable导出Xlsx格式的文件下载(网页输出) ...

  2. C#中使用NPIO实现导入导出Excel简单操作

    本文介绍了在Winform中使用NPOI(PIO项目下的.Net组件)来操作Excel文件,而无需安装Office. 要实现的效果是这样的: 1.导出Excel:根据指定datatable,弹出导出窗 ...

  3. php导出excel表格例子,PHP导出excel表格示例

    方法一:适合单独导出 $filename='提现列表-' . date('Ymd',time()); header("Content-type: application/vnd.ms-exc ...

  4. vue导出excel(简单方法完整介绍)

    1.安装插件 cnpm install vue-json-excel 2.min.js中引入使用 import JsonExcel from 'vue-json-excel' Vue.componen ...

  5. java实现Excel动态列导出的简单例子

    可以通过该对象的set方法设置各个参数,headKey保存结果集中,数据对应的key值,ArrayList最佳,保证了导出列的顺序,同时限制了每个sheet页保存的最大数据行数为5W条,这些参数也可以 ...

  6. SpringMVC 使用poi导出excel简单小例子

    不说话,上代码. student.java package com.cn.hnust.domain;import java.io.Serializable;public class Student i ...

  7. 在VUE项目中导出excel——简单使用xlsx

    在大量的项目开发和使用过程中,我们经常会遇到需要将某些数据导出为excel的操作,这里介绍一个很简单的导出方案--xlsx... 插件安装 网络好就直接使用 npm install xlsx -S 网 ...

  8. php导出excel方法,PHP导出EXCEL简单实用方法

    /** * 得到相应的列表字符串 * * @param $titArr 字段和标题的对应数组 * @param $data 数据的列表数组 * @param $fileName 文件的名字 * @pa ...

  9. php excel 导入2ge,风之涯技术博客 - 使用PhpSpreadsheet导入导出Excel简单描述

    最近做项目,遇到一个需要excel.word导出的功能案例,所以找到了PhpSpreadsheet进行导出,不要问我为什么不用PHPExcel,因为PHPExcel已经不更新了,对后面的扩展不太好.今 ...

最新文章

  1. MongoDB数据库(二:高级操作)
  2. java+enum+devicetype_Java HmDatapoint.isNumberType方法代碼示例
  3. UA MATH574M 统计学习II 二元分类
  4. sqlerver mysql_转 MYSQL学习(一)
  5. 剑指offer java版(一)
  6. mt4软件下载fxcm-mt4平台下载_顺风车软件哪个好用 这三个打车平台一定要下载
  7. mysql开启binlog日志影响性能吗_mysql binlog日志优化及思路
  8. qtp java_QTP Java swing 一些控件的遍历
  9. Zabbix使用snmptrap方式监控vCenter Server
  10. 云开发:未来的软件开发方式
  11. mui用ajax上拉加载更多,mui 中的一个上拉加载及下拉刷新的方法 ,但是我使用ajax拿不到url中的数据,是为什么?...
  12. 荣耀路由器w831刷linux,华为荣耀WS831路由器如何设置
  13. 大数据给交通行业带来的五大变革
  14. 微信公众号编辑器的附件功能(如Word、Excel、Pdf等)
  15. Python 爬取嗅事百科段子
  16. 生成对抗网络项目:6~9
  17. php可以用中文的单引号吗,PHP中单双引号用法误区
  18. 日记 or 小小说 :想进腾讯的师弟师妹们,别学我 (二)
  19. 传感器和变送器的区别
  20. java怎么读_java怎么读

热门文章

  1. 储存过程的优点?缺点?
  2. Linux安装deb安装包
  3. laradock 安装swoole
  4. Andriod-Dagger2
  5. 重构碎片化知识_《碎片化与重构》之如何整合知识碎片
  6. 如何给表格中的关键字加中括号,双引号?
  7. Go 使用IP纯真库获取IP对应的国家、省、市
  8. 金三银四求职季,程序员面试必备——数据库篇
  9. OJ(网络测试平台)的正确打开方式(C/C++)
  10. hashCode:哈希值