这是一个直截了当的问题:您是否知道
Java存储过程是否比Oracle数据库中的PL / sql慢?
我们已经将存储过程从PL / sql迁移到Java只是为了对它进行基准测试,它的时间大约是PL / sql的两倍.这也是你的体验吗?
谢谢.
解决方法
无论何时在语言之间切换,都会产生开销,称为上下文切换.
(http://asktom.oracle.com/pls/apex/f?p=100:11:0::::P11_QUESTION_ID:60122715103602)
在sql和PL / sql之间移动甚至是一个开销,它们是非常紧密集成的.因此,在Java和PL / sql之间移动的效率始终低于纯PL / sql.
Java Stored Procedure Vs PL/SQL Stored Procedure
至于上下文切换发生后的性能,您的基准测试将为您提供最佳答案,但FWIW,因为PL / sql紧密集成在Oracle数据库中,如果您正在获取数据,它应该比存储的Java代码执行得更好与数据库交互,如果你纯粹操纵已经获取的数据,它将取决于你对数据做了什么,你的基准测试将告诉你答案.