Skip to main content

数据导入

本模块是一个功能完备的数据导入处理框架,帮助团队聚焦数据导入业务逻辑。

功能特点

  • 数据模板 支持 Excel 数据模板,基于 Apache POI 框架对 Excel文件进行读写操作。
  • 处理批次 提供基于处理批次的可视化管理(启动、停止、日志查看等)。
  • 排他机制 支持单实例排他机制处理,避免数据更新冲突。
  • 异步机制 基于独立线程处理,避免堵塞用户体验。
  • 数据校验 提供对输入数据的校验工具类。

处理流程全景图

通过下图可以对本框架有一个整体的理解:

  • 读取任务配置,进行排他检测。
  • 创建任务执行记录、读取数据文件、数据格式校验。
  • 逻辑处理:数据逻辑校验、更新业务数据、反写 Exdel 数据文件(数据校验结果等)。
  • 更新任务执行记录(批次)状态(执行状态、输入件数等)。

importing-data-sample

任务配置

  • 单实例模式 单实例模式下任务只能运行一个实例,此模式可避免数据更新冲突。
  • (未)最大挂起时间 任务超过最大挂起时间,将被停止。
  • (未)单次处理数据件数 任务以此件数为处理单位。一个批次完成后任务相应状态会被更新。

任务执行记录(批次)信息

  • 执行状态(处理中) 处理正在进行中。
  • 执行状态(完成 处理正常结束。
  • 执行状态(停止) 处理启动后,被手动停止。通常是因为服务器宕机、服务重启导致处理状态无法更新。
  • 执行状态(错误) 处理抛出了预期外的异常而结束。
  • 输入件数 导入数据文件中的数据件数。
  • 成功件数 成功导入数据库的数据件数。
  • 失败件数 因为无法通过数据校验(如:数据格式、唯一性)而无法导入数据库的数据件数。
  • 开始时间 处理开始时间。
  • 结束时间 处理结束时间。
  • 最后更新时间 批次各种状态被最后更新的时间。根据本属性可判断处理的死活状态,长时间不更新处理着处理异常挂起。

页面示例

importing-data-sample

视频教程