1 Maven依赖

        <dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>2.2.8</version></dependency>

2 LocalDateConverter

LocalDate类型转换器。

package com.convert;import com.alibaba.excel.converters.Converter;
import com.alibaba.excel.enums.CellDataTypeEnum;
import com.alibaba.excel.metadata.*;
import com.alibaba.excel.metadata.property.ExcelContentProperty;
import org.springframework.stereotype.Component;import java.time.LocalDate;
import java.time.format.DateTimeFormatter;/*** LocalDate类型转换器*/
@Component
public class LocalDateConverter implements Converter<LocalDate> {@Overridepublic Class<LocalDate> supportJavaTypeKey() {return LocalDate.class;}@Overridepublic CellDataTypeEnum supportExcelTypeKey() {return CellDataTypeEnum.STRING;}@Overridepublic LocalDate convertToJavaData(CellData cellData, ExcelContentProperty excelContentProperty, GlobalConfiguration globalConfiguration) throws Exception {return LocalDate.parse(cellData.getStringValue(), DateTimeFormatter.ofPattern("yyyy-MM-dd"));}@Overridepublic CellData convertToExcelData(LocalDate localDate, ExcelContentProperty excelContentProperty, GlobalConfiguration globalConfiguration) throws Exception {return new CellData<>(localDate.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")));}
}

3 调试代码

    /*** 调试自定义Convert** @param response*/@GetMapping("/customConvert")public void customConvert(HttpServletResponse response) throws IOException {List<List<Object>> sheetDataList = new ArrayList<>();List<Object> rowList = new ArrayList<>();rowList.add(LocalDate.parse("2021-07-30", DateTimeFormatter.ofPattern("yyyy-MM-dd")));sheetDataList.add(rowList);response.addHeader("Content-Disposition", "filename=test.xlsx" );//设置类型,扩展名为.xlsresponse.setContentType("application/vnd.ms-excel");ExcelWriter excelWriter = EasyExcel.write(response.getOutputStream())//加载类型转换器.registerConverter(new LocalDateConverter()).build();WriteSheet writeSheet = EasyExcel.writerSheet("模板").build();excelWriter.write(sheetDataList, writeSheet);//千万别忘记finish 会帮忙关闭流excelWriter.finish();}

4 调试结果

旭东怪的个人空间-旭东怪个人主页-哔哩哔哩视频哔哩哔哩旭东怪的个人空间,提供旭东怪分享的视频、音频、文章、动态、收藏等内容,关注旭东怪账号,第一时间了解UP注动态。人生低谷不可怕,可怕的是坚持不到人生转折点的那一天https://space.bilibili.com/484264966?spm_id_from=333.1007.0.0

EasyExcel 自定义LocalDate类型转换器Converter相关推荐

  1. Spring MVC自定义类型转换器Converter、参数解析器HandlerMethodArgumentResolver

    文章目录 一.前言 二.类型转换器Converter 1.自定义类型转换器 三.参数解析器 1.自定义分页参数解析器 2.自定义注解参数解析器 一.前言 Spring MVC源码分析相关文章已出: S ...

  2. 自定义的类型转换器中怎样自定义错误消息?(待解答)

    1.HTTP没有"类型"的概念,每一项表单输入只可能是一个字符串或一个字符串数组.从HTML表单到服务器端,必须把String转换为特定的数据类型. 2.字符串和基本数据类型之间的 ...

  3. Spring MVC__自定义日期类型转换器

    WEB层采用Spring MVC框架,将查询到的数据传递给APP端或客户端,这没啥,但是坑的是实体类中有日期类型的属性,但是你必须提前格式化好之后返回给它们.说真的,以前真没这样做过,之前都是一口气查 ...

  4. SpringMVC配置任何类型转换器 Converter(以时间类型为例)

    SpringMVC配置任何类型转换器 Converter (以时间类型为例) 从页面传到后台的时间字符串转成日期格式封装到实体类 1. 定义时间DateConverter转换类实现  Converte ...

  5. 通过mybatis自定义参数类型转换器,进行数据库字段加密脱敏

    1 问题背景 在数据库存储人员的信息时,有一些信息是敏感数据,如身份证号.出生地等.为了防止信息泄漏,这些信息不允许直接在数据库中查看,此时就需要对这些字段进行加密存储,但在页面查看的仍旧是解密后的数 ...

  6. java converter转换器_在SpringMVC中设置自定义类型转换器Converter

    前言 在SpringMVC中为我们提供了许多内置的类型转换器,当我们在HTML表单中发起一个请求时,Spring会根据表单项中name属性的值映射到POJO的属性名,调用相对性属性的set方法帮我们把 ...

  7. SpringMVC(7)——类型转换器Converter

    目录 概述 内置的类型转换器 自定义类型转换器 创建实体类 创建控制器类 创建自定义类型转换器类 注册类型转换器 创建JSP视图文件 运行效果 概述 SpringMVC框架的Converter< ...

  8. oracle typehandler,Mybatis实现自定义的类型转换器TypeHandler

    此文其实是java操作Oracle类型XMLType总结二:使用Mybatis附带的一篇小结. Mybatis实现自定义的转换器,十分的简单,其主要步骤分为三步,这里以操作XMLType类型为例. 第 ...

  9. 使用 mybatis 自定义日期类型转换器

    文章目录 前言 一.resources 1.1 sqlMapConfig.xml 1.2 log4j.properties 1.3 userMapper.xml 二.java结构 2.1 dao 2. ...

最新文章

  1. 远程更新FPGA配置的热启动地址(WBSTAR)的格式?
  2. 第五百七十二、三天 how can I 坚持
  3. TensorFlow ImportError: (‘Failed to import pydot. You must `pip install pydot`)
  4. 初级算法——两个物种(蓝桥杯)
  5. linux命令 把文件夹拷贝一遍_cp 快捷命令:复制文件到多个目录
  6. 在linux的weblogic上增加启动参数
  7. svn强制注释 linux,svn强制要求提交注释
  8. 《Python Cookbook 3rd》笔记(2.1):使用多个界定符分割字符串
  9. vscode php formatter mac配置_Mac上配置Vs code时,遇到的几个“坑”!
  10. (10)verilog语言编写SPI发送
  11. 31 岁的我为何会在创业成功后选择编程?
  12. Javascript s04
  13. 显示纯服务器_BBT三行代码搭建服务器,让Dynamo跳出IronPython的封锁
  14. register 寄存器变量
  15. Atitit 软件 开发 与互联网发展趋势 与一些原则 潮流就是社区化 o2o 各种服务化 xaas ##--------信息化建设的理念 1.1.兼容性(不同版本与项目兼容性有利
  16. PWM、PPM、SBUS、DSM2这四种协议区别
  17. java成员变量的调用_java中对象调用成员变量与成员的方法介绍
  18. 575. 分糖果【我亦无他唯手熟尔】
  19. 高等数学:数列前后项【递推式的单调性】与【整个数列单调性】的关系
  20. Kaggle数据集之电信客户流失数据分析

热门文章

  1. 怎样让自己的程序进程不让别人强行关闭掉
  2. 云安全网站防护系统“李鬼”横行
  3. 各种样式的表格数据自动统一抽取
  4. 用VS2010写一个简单的记账工具(一)基础设置
  5. pands 画图 调整大小_胜负盘和大小盘盘赔组合中的大球模式
  6. 安全测试之不安全的直接对象引用
  7. uni-app 语音播报-前台后台离线推送语音播报、到账xx元、收款播报、自定义推送铃(ios)
  8. 黄聪:Win7文件另存为时 找不到桌面选项
  9. 「消防知识」2018注册消防工程师学习要点(含解析)
  10. 【转】一个网站都需要哪些备案