spring boot 中easypoi导出导入excel

1、安装依赖

<dependency>
            <groupId>cn.afterturn</groupId>
            <artifactId>easypoi-spring-boot-starter</artifactId>
            <version>4.4.0</version>
        </dependency>

2、实体类

package com.iot.iotdb.entity;

import cn.afterturn.easypoi.excel.annotation.Excel;
import lombok.Data;
import lombok.EqualsAndHashCode;

@Data
@EqualsAndHashCode(callSuper = false)
public class Member {

    @Excel(name = "变量名称", width = 20)
    private String variableName;

    @Excel(name = "变量地址", width = 40)
    private String variableAddress;

    @Excel(name = "数据类型", width = 30)
    private String dataType;

    @Excel(name = "变量值", width = 25)
    private String variableValue;

    @Excel(name = "备注", width =50)
    private String remark;
}

在此我们就可以看到EasyPoi的核心注解@Excel,通过在对象上添加@Excel注解,可以将对象信息直接导出到Excel中去,下面对注解中的属性做个介绍;

name:Excel中的列名;
width:指定列的宽度;
needMerge:是否需要纵向合并单元格;
format:当属性为时间类型时,设置时间的导出导出格式;
desensitizationRule:数据脱敏处理,3_4表示只显示字符串的前3位和后4位,其他为*号;
replace:对属性进行替换;
suffix:对数据添加后缀。
3、导入

@PostMapping("/import")
    public List<Member> importExcel(MultipartFile file){
        ImportParams params = new ImportParams();
        //params.setTitleRows(1);//标题
        //params.setHeadRows(1);//表头
        try {
            List<Member> list = ExcelImportUtil.importExcel(
                    file.getInputStream(),
                    Member.class, params);
            return list;
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }

4、导出

@PostMapping("/export")
    public void exportExcel(HttpServletResponse response, @RequestBody List<Member> list){
        ExportParams params = new ExportParams(null, "测试", ExcelType.XSSF);
        String fileName="test.xlsx";
        Workbook workbook = ExcelExportUtil.exportExcel(params, Member.class, list);
        this.downLoadExcel(fileName,response,workbook);
    }

    public void downLoadExcel(String fileName, HttpServletResponse response, Workbook workbook) {
        try {
            response.setCharacterEncoding("UTF-8");
            response.setHeader("content-Type", "application/vnd.ms-excel");
            response.setHeader("Content-Disposition",
                    "attachment;filename=" + URLEncoder.encode(fileName, "UTF-8"));
            workbook.write(response.getOutputStream());
            response.getOutputStream().close();
        } catch (IOException e) {
            throw new RuntimeException(e.getMessage());
        }
    }

5、参考网站:https://www.cnblogs.com/livedian/p/15469742.html
6、注意:如果凶指定行开始并忽略红杭数据的话,则

ImportParams params = new ImportParams();
//        params.setTitleRows(4);//标题
        params.setHeadRows(4);//表头
        params.setNeedSave(true);
        params.setStartSheetIndex(0);
        params.setSheetNum(1);
        params.setKeyIndex(0);

8、对于日期类型的,则

@Excel(name="计划结束",importFormat = "yyyy-MM-dd")
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
使用Spring BootEasyPOI导出Excel文件的步骤如下: 1. 在pom.xml文件添加EasyPOI的依赖: ``` <dependency> <groupId>cn.afterturn</groupId> <artifactId>easypoi-base</artifactId> <version>4.2.0</version> </dependency> ``` 2. 创建一个POJO类,用于表示Excel的每一行数据。 3. 在Controller创建一个请求处理方法,用于处理导出Excel文件的请求。在该方法,使用EasyPOI创建Excel文件并将其写入输出流,然后返回一个ResponseEntity对象,该对象包含Excel文件的数据和响应头信息。 以下是一个示例Controller方法: ``` @GetMapping("/export") public ResponseEntity<byte[]> exportExcel() throws IOException { // 创建Excel文件 List<MyData> dataList = getDataList(); Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), MyData.class, dataList); // 将Excel文件写入输出流 ByteArrayOutputStream out = new ByteArrayOutputStream(); workbook.write(out); // 设置响应头信息 HttpHeaders headers = new HttpHeaders(); headers.setContentType(MediaType.APPLICATION_OCTET_STREAM); headers.setContentDisposition(ContentDisposition.attachment().filename("data.xlsx").build()); return new ResponseEntity<>(out.toByteArray(), headers, HttpStatus.OK); } private List<MyData> getDataList() { // 返回需要导出的数据的集合 } ``` 在这个示例,我们首先创建了一个MyData类,用于表示Excel的每一行数据。然后,在Controller创建了一个请求处理方法,该方法使用EasyPOI创建Excel文件,并将其写入输出流。最后,我们设置了响应头信息,将Excel文件作为响应体返回给客户端。 希望这个示例能够帮助您理解如何使用Spring BootEasyPOI导出Excel文件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员阿明

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值