当前位置: 首页 > news >正文

工作记录------@Accessors(chain = true)引起的BUG,Excel导入时获取不到值

工作记录------@Accessors(chain = true)引起的BUG,Excel导入时获取不到值

如题所示
背景:在进行文件excel文件导入时,发现实体类获取到的属性值都为null。
框架:com.alibaba.excel 2.2.0的版本。

结论:首先说下结论
如果能顺利导出,但是当excel导入时,实体类对应属性为null时,一般存在两种情况
1.@ExcelProperty(value = “xxx”, index = 0)
表格名称或者索引位置不一致引起,此时调整即可
2.接受excel的实体类存在@Accessors(chain = true)的注解,此时需要将实体类上的注解删除。

@Accessors(chain = true)注解有什么用?

当实体类没有该注解时,编译后的文件,set方法的返回值是void。

    public void setActive(final Integer active) {this.active = active;}

在这里插入图片描述
当实体类增加过@Accessors(chain = true)之后,看编译后的文件,能够发现set方法返回的就是当前对象

public BaseProcedure setProcedureName(final String procedureName) {this.procedureName = procedureName;return this;}

在这里插入图片描述

结语

@Accessors(chain = true)能够为当前对象提供链式访问的能力,简化代码。
但也会与一些插件出现不兼容的现象。使用时需要注意。

 User user=new User().setAge(27).setName("kevin");//返回对象
http://www.lryc.cn/news/6125.html

相关文章:

  • JavaEE-HTTP协议(二)
  • 代理的基本原理和多线程的基本原理
  • T38,数的递归
  • QT+ OpenGL 变换
  • 【算法】前缀和
  • 《Redis实战篇》七、Redis消息队列
  • android组件化
  • 华为OD机试真题Python实现【特异性双端队列】真题+解题思路+代码(20222023)
  • 24.架构能力
  • 前端原生 CSS 跑马灯效果,无限轮播(横竖版本,带渐变遮罩,简单实用)
  • 4.8 注解与自定义注解
  • webpack 的热更新是如何做到的?原理是什么?
  • 嵌入式ARM设计编程(一) 简单数据搬移
  • 【Selenium】十分钟手把手带你学会WebDriver API
  • 3DMAX高级弯曲插件使用教程
  • 前端面试题之性能优化大杂烩
  • SpringBoot+Vue实现养老智慧服务平台
  • tigervnc2023
  • 智能三子棋(人机大战)—— 你会是最终赢家吗?万字讲解让你实现与自己对弈
  • 【自制开发板】自制STM32F407开发板(含TFT 8080串口屏幕接口)
  • openvino yolov5/ssd 实时推流目标检测在html上显示
  • 基于FPGA的 SPI通信 设计(1)
  • 为什么西门子、美的等企业这样进行架构升级,看看改造效果就知道了
  • open3d点云配准函数registration_icp
  • HTML编码规范
  • PDF SDK for Linux 8.4.2 Crack
  • vb 模块和作用域的关系
  • Redis分布式锁
  • 京东前端经典面试题整理
  • django+mysql实现一个简单的web登录页面