alibaba/easyexcel

自定义格式转换 注入业务bean 为null

Open

#3.541 aberto em 4 de nov. de 2023

Ver no GitHub
 (1 comment) (0 reactions) (0 assignees)Java (7.599 forks)batch import
help wanted

Métricas do repositório

Stars
 (33.728 stars)
Métricas de merge de PR
 (Nenhuma PRs mesclada em 30d)

Description

package org.jeecg.modules.aq.vo;

import com.alibaba.excel.converters.Converter; import com.alibaba.excel.converters.ReadConverterContext; import com.alibaba.excel.converters.WriteConverterContext; import com.alibaba.excel.enums.CellDataTypeEnum; import com.alibaba.excel.metadata.data.WriteCellData; import org.jeecg.modules.aq.service.CommonService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component;

/**

  • String and string converter

  • @author Jiaju Zhuang */ @Component public class CustomStringStringConverter implements Converter {

    @Autowired private CommonService commonService;

    @Override public Class<?> supportJavaTypeKey() { return String.class; }

    @Override public CellDataTypeEnum supportExcelTypeKey() { return CellDataTypeEnum.STRING; }

    /**

    • 这里是读的时候会调用 不用管
    • @return */ @Override public String convertToJavaData(ReadConverterContext<?> context) { return context.getReadCellData().getStringValue(); }

    /**

    • 这里是写的时候会调用 不用管
    • @return */ @Override public WriteCellData<?> convertToExcelData(WriteConverterContext context) { // Map<String, String> categoryMap = commonService.categoryMap(); if (/categoryMap.containsKey(context.getValue())/true) { // WriteCellData writeCellData = new WriteCellData<>(categoryMap.get(context.getValue())); WriteCellData writeCellData = new WriteCellData<>(""); return writeCellData; } return new WriteCellData<>(""); }

}

Guia do colaborador