[alibaba/easyexcel]AnalysisContextImpl中创建DefaultAnalysisEventProcessor建议使用spi技术来做一个扩展

2024-05-09 976 views
2

在工作中,由于解析的excel中存在列名不同的情况下需要将内容解析到同一个字段上,并且需要动态的配置从第几行开始解析Excel数据

所以更改了DefaultAnalysisEventProcessor.java类中的一些内容来配合配置文件之类的手段达到动态解析的目的 希望AnalysisContextImpl中的 analysisEventProcessor = new DefaultAnalysisEventProcessor();可以通过spi自动注入,方便开发者进行扩展自定义内容

简单代码如下所示: ServiceLoader serviceLoader = ServiceLoader.load(AnalysisEventProcessor.class); AnalysisEventProcessor processor = null; if (serviceLoader.iterator().hasNext()) { processor = serviceLoader.iterator().next(); } if (processor == null) { processor = new DefaultAnalysisEventProcessor(); } analysisEventProcessor = processor;

回答

1

扩展&配置的 后面会想办法

0

我已经编写了spi的配置扩展点方法,也编写了一些动态多了解析到一列,动态指定从第几行读取的一些方法,希望能贡献上去

1

@leihfei 可参考下代码吗?我这边也有这个需求,value多个只取最后一个有点难受