excel解析数据为null问题

场景:

在项目上传文件解析excel时数据为null,但是excel反复确认有很多行值,并且路径下的文件是相对应的,代码也是用的以前的,但是就是为空

原因:

当时断点看到解析到了表头读到了数据行数 但是没读到数据内容,又把这个文件在其他接口试了下发现能解析到值,说明不是文件格式问题,也不是代码逻辑问题,最后换了实体类就可以了,之后对比之前实体类猜想验证了是注解@Accessors(chain = true)引起的问题,

因为Excel在解析时会先把每行数据解析成map, 然后再由Map转存到Bean中。使用BeanMap从Map拷贝到Bean, 需要Map 的Key与Bean的变量名一致, 并有对应的 set方法, 且set方法为 void, 才能拷贝成功。然而@Accessors(chain = true)注解会使set方法返回的不是void, 而是当前对象。所以导致文件内容不能正常读取到实体对象中。

解决:

1.取消这个注解

2.改成@Accessors(chain = false)

3.新建对象来接收

相关推荐
倔强的石头_16 小时前
《Kingbase护城河》——数据库存储空间全景探测与精细化瘦身实战
数据库
唐青枫16 小时前
Java JDBC 实战指南:从 Connection 到事务和连接池
java
一个做软件开发的牛马17 小时前
MyBatis-Plus 从零实战:完整搭建可运行 Demo,BaseMapper 零 SQL、Wrapper 条件构造、分页插件与代码生成器详解
java·后端
用户37215742613517 小时前
Java 处理 PDF 图片:提取 PDF 中的图片,并压缩 PDF 图片体积
java
用户37215742613517 小时前
Java 打印 Word 文档:从基础打印到高级设置
java
冬奇Lab1 天前
每日一个开源项目(第134篇):Zvec - 阿里开源的嵌入式向量数据库,向量搜索界的 SQLite
数据库·人工智能·llm
用户3521802454751 天前
当 Prompt 学会"热更新":Spring Boot × Nacos3 AI 实战
java·spring boot·ai编程
东坡白菜1 天前
破局全栈:一个前端开发的Java入门实战记录(1)
java·全栈
唐青枫1 天前
Java Tomcat 实战指南:从 Servlet 容器到 Spring Boot 部署
java
wsaaaqqq2 天前
roudan:自由选择实体、灵活操作数据、快速写入数据库的 Java 框架
java