easyExcel文件上傳驗證


/**
  * 處理每行數據
  */
@Override
    public void invoke(Model model, AnalysisContext analysisContext) {
        if (model.getName.length()>20) {
            throw new ExcelAnalysisException("姓名過長");
        }
    }


/**
  * 接收invoke中的異常,將異常處理拋出到service
  *
  * @author jamin
  * @date 2020/7/30 10:28
  */
@Override
public void onException(Exception exception, AnalysisContext context) throws Exception {

    //獲取行號
    Integer index = context.readRowHolder().getRowIndex() + 1;
    //invoke中的異常
    if (exception instanceof ExcelAnalysisException) {
        ExcelAnalysisException excelAnalysisException = (ExcelAnalysisException) exception;
        String message = excelAnalysisException.getMessage();
        throw new ExcelAnalysisStopException("[數據處理異常--第" + index + "行]----" + message);
    }
    throw new ExcelAnalysisStopException("[數據解析異常] 請檢查文件");

}
 /**
   * 導入數據
   *
   * @author jamin
   * @date 2020/7/30 10:37
   */
 public MessageVo importData(MultipartFile file) {
     Map<String, String> map = new HashMap<>();
      map.put("code","0");
      try {
 EasyExcel.read(file.getInputStream()).autoCloseStream(true).autoTrim(true).headRowNumber(2).head(Model.class).registerReadListener(new ExcelListener()).sheet(0).doRead();
        } catch (Exception ex) {
             map.put("code","1");
            map.put("msg",ex.getCause().getMessage());
        }
 }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM