傅关 2024-03-11 23:46 采纳率: 0%
浏览 15

使用jxl导入Excel,系统显示导入成功但是数据库和系统页面中并没有出现导入的数据

网上找了一个系统的源代码,大部分功能都能成功的实现,但是在导入Excel时达不到目的。系统的导出功能可以正常使用。 (已经将页面中原本的数据删除)将导出的表再次导入时,页面显示导入成功,但是页面中并没有出现数据,数据库中也没有数据。自己新建一个表,填上正确的数据,再次导入,也显示导入成功,但是页面和数据库中也没有出现数据。
想问一下,这可能是什么原因导致的。

  • 写回答

4条回答 默认 最新

  • 专家-赤兔[在线] 优质创作者: 编程框架技术领域 2024-03-11 23:47
    关注

    引自免费微信小程序:皆我百晓生

    根据你的描述,问题可能出在Excel数据导入后并未正确地写入数据库或是在系统页面中没有进行相应的刷新显示。为了排查并解决这个问题,可以按照以下步骤进行分析和调试:

    1. 检查导入逻辑: 确认Excel导入功能的代码部分是否正确读取了Excel文件中的数据,并且这些数据是否被成功转换为对应的Java对象。这部分代码应当包括打开Excel文件、读取单元格内容、转换为业务实体对象等操作。

      示例(简化版):

      // 使用jxl库读取Excel文件
      Workbook workbook = Workbook.getWorkbook(new File(filePath));
      Sheet sheet = workbook.getSheet(0);  // 假设使用第一个sheet
      
      for (int i = 1; i < sheet.getRows(); i++) {  // 跳过表头
          Row row = sheet.getRow(i);
          String column1 = row.getCell(0).getContents();
          // ... 其他列的读取及转换
      
          // 将数据转换为实体对象并保存到数据库
          MyEntity entity = new MyEntity(column1, ...);
          dao.save(entity);
      }
      
      workbook.close();
      
    2. 数据库操作验证: 在执行数据库插入操作的地方添加日志输出或者使用数据库客户端工具查看对应表的数据变化,确保数据已经成功写入数据库。

    3. 事务处理: 确保在导入过程中涉及数据库操作的部分在一个完整的事务中完成,以避免因事务未提交而导致数据未能持久化。

    4. 页面显示更新: 检查页面数据显示逻辑,确认在导入数据后是否有触发页面刷新或重新查询数据库的操作。例如,通过调用某个方法来获取最新数据并渲染页面。

    5. 权限与过滤条件: 确保当前用户有足够的权限查看导入的数据,并且在页面加载时没有设置限制性很强的查询条件,导致新导入的数据无法显示出来。

    6. 异常处理: 查看整个导入过程的异常处理机制,如果在导入过程中有未捕获的异常,可能会导致看似导入成功但实际上数据并没有成功存入数据库。

    根据以上提示,请逐一检查各个环节,定位问题所在并修复。若需要具体代码实现,请提供更详细的项目结构和框架信息。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 3月11日