在java中从Excelsheet向oracle 10g移植数据的最佳方法

在java中从Excelsheet向oracle 10g移植数据的最佳方法,java,excel,oracle10g,Java,Excel,Oracle10g,我们将在我的应用程序中使用jxl.jar将数据从excelsheet移植到java中的oracle 10g。最近,我们在移植屏幕中添加了多个业务验证。在实施业务验证之前,数据移植工作正常。在添加条件之后,移植过程非常缓慢,在oracle中上载数据最终或有时出现异常(超时异常)。Excel工作表记录少于500条表示工作正常。如果超过500条表示我们面临问题?使用java上载数据的最佳方法是什么?如果有错,请道歉 编辑: Iam使用JDBC批处理。首先,Iam检查excelsheet中所有记录的业务

我们将在我的应用程序中使用jxl.jar将数据从excelsheet移植到java中的oracle 10g。最近,我们在移植屏幕中添加了多个业务验证。在实施业务验证之前,数据移植工作正常。在添加条件之后,移植过程非常缓慢,在oracle中上载数据最终或有时出现异常(超时异常)。Excel工作表记录少于500条表示工作正常。如果超过500条表示我们面临问题?使用java上载数据的最佳方法是什么?如果有错,请道歉

编辑:
Iam使用JDBC批处理。首先,Iam检查excelsheet中所有记录的业务验证。如果满足所有条件,则执行批处理其他方式将在屏幕上抛出错误。

我认为您使用jxl的方法是正确的(不过我更愿意)。当插入大量数据并提交每500个条目时,应该使用


此外,您不应将Excel文件中的所有数据加载到内存中,然后将它们添加到数据库中。而是从Excel中读取前500行,将其提交到数据库,然后继续执行下500行。

一种方法是从Excel工作表中导出CSV,然后将该CSV数据导入到oracle表中。我发现这很有效


这里有一个启动线程:

您能提供一些代码片段吗?听起来您在内存中保存了太多的数据。你应该分小块工作。可能首先验证excel文件中的每一行,然后再次读取excel文件并使用较小的批处理。