JDBC提交没有反映在Oracle DB

时间:2017-10-28 07:11:26

标签: multithreading oracle hibernate java-ee jdbc

我的要求是我必须向Oracle DB提交4Million记录。

为此,我开发了一个启动10个线程的Java程序。它是生产者和消费者设计。生产者为每个消费者(Java线程)推送数据(范围。例如1-1000)。消费者使用不同数据库中从一个表到另一个表的数据和提交。

在消费者中,只要线程将数据提交给DB,我就会记录范围和提交的记录总数。

一切运行顺利,但在控制台上几分钟后,它记录了提交的记录为90,000,但是当我检查数据库数量只有40,000时。

即使是Java程序提交的数据,但在Oracle DB中,为什么计数较少?

之后我才知道多次提交会减慢进程。我正在使用正确的连接池和批处理。

我无法创建数据库链接,或者无法使用其他方法执行此任务。我必须使用任何Java技术。普通的JDBC,Hibernate或任何其他技术。

请帮我解决这个问题。

您的时间将受到高度赞赏。 感谢。

0 个答案:

没有答案