JAVA使用easyExcel导出数据到EXCEl,导出数据不全问题解决

JAVA使用easyExcel导出数据到EXCEl,导出数据不全问题解决

问题描述

JAVA使用easyExcel导出数据到EXCEl,导出数据不全问题。

导出的excel部分列有数据,好几列没有数据

解决思路一

从网上百度查询,大多数的解决思路是说:

maven坐标只添加了easyExcel依赖导致数据无法写入到excel文件中。注意必须要加入poi的相关依赖才能使用easyExcel中的读写功能。

对于这种解决思路,解决办法也是很简单,看一下自己的maven是否存在poi的相关依赖。如果没有,导入相关依赖,如下:

复制代码
<!--easyexcel -->
   <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>easyexcel</artifactId>
        <version>${easyexcel-version}</version>
    </dependency>
    <dependency>
        <groupId>org.apache.poi</groupId>
        <artifactId>poi</artifactId>
        <version>4.1.1</version>
    </dependency>

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

但是这种解决办法对我不起作用。

解决思路二

于是我开始排查问题,为什么有的部分列能导出数据,有的却没有数据。最后终于发现了问题:

是因为我的导出实体子弹属性首字母大写了,这个真的非常尴尬。因为题主平时除了写java代码还要写C#项目的代码,C#项目代码里面要求首字母都大写,所以习惯了,写成了大写,这个一定要注意啊,java的驼峰命名还是要遵循的。

java 复制代码
/**
 * @author Eric.Yang
 * @version V1.1
 * @date 2024/10/14
 * @description TODO
 */
@Data
@ExcelIgnoreUnannotated
public class MB51Vo implements Serializable {
    /*** *****/
    @ExcelProperty(value = "Material")
    @ColumnWidth(40)
    private String Material;

    /*** *****/
    @ExcelProperty(value = "Plant")
    private String Plant;

    /*** *****/
    @ExcelProperty(value = "Storage location")
    private String StorageLocation;

    /*** *****/
    @ExcelProperty(value = "Movement type")
    private String MovementType;

    /*** *****/
    @ExcelProperty(value = "Material Document")
    private String MaterialDocument;
    
}

如上所示,把导出实体对应的Excel改为驼峰式命名,小写开头就合适了。记录一下,两种语言的差距。

温馨提示

如有帮助,转发和使用请注明出处,感谢开源,感觉Code。

相关推荐
Evand J6 小时前
【MATLAB例程介绍】(17)永磁同步电机(PMSM)基于自适应无迹卡尔曼滤波(AUKF)的电流噪声在线估计。测量噪声协方差自适应与转速估计对比仿真
开发语言·matlab·卡尔曼滤波·无迹卡尔曼滤波·pmsm·电机滤波
BaiPeter7 小时前
ZPL文件预览
开发语言·c++
aiks_yuan7 小时前
Java CPU 100% 怎么排查:JDK 11 起 jstack 自带线程 CPU 时间,不用再 top -H 换算十六进制(JDK 8、11、17 实测)
java
Flynn Liang9 小时前
AiServices 源码级拆解:一个接口如何变成 RAG Agent
java·langchain·源码分析·rag·langchain4j·aiservices
Flynn Liang9 小时前
LangChain4j 1.23 架构全景:Java 大模型应用的 6 层抽象
java·langchain·大模型·rag·ai agent·langchain4j
聪明的笨猪猪10 小时前
实际工程问题:AI生成Redis分布式锁的原子性缺陷导致库存超卖
java·经验分享·面试·ai编程
软件技术NINI10 小时前
基于SpringBoot和Vue的新能源汽车销售推荐系统
java·vue.js·spring boot·后端·汽车·毕业设计·毕设
Flynn Liang11 小时前
LangChain4j 生产级工程骨架:12 个模块 + Docker 一键启动
java·spring boot·langchain·rag·langchain4j
噢,我明白了12 小时前
JAVA中的一些基础应用知识点
java·开发语言
SL_staff12 小时前
私有化低代码不是妥协,而是企业级数字化的自主可控主航道
java