Tag: 批量加载

将List of Bean传递给oracle存储过程的Java程序 – 一次传递整个列表而不是一个接一个地追加对象

我有以下TYPE,PROCEDURE和Java代码集。 我能够成功调用存储过程,但我必须一个接一个地追加对象。 我希望这个过程一次性发生,因为我正在处理超过50K +的记录。 任何人都可以让我知道需要做哪些更改,以便我可以将整个列表发送到一个。 代码可以在下面找到。 TYPES: CREATE OR REPLACE TYPE CER_GL_ENTRY_TYPE AS OBJECT (idKey NUMBER(10) ); CREATE or REPLACE TYPE CER_GL_ENTRY_TYPE_LIST AS TABLE OF CER_GL_ENTRY_TYPE; PROCEDURE: CREATE OR REPLACE PROCEDURE GL_PROCESS_BULK_ENTRIES ( p_array IN CER_GL_ENTRY_TYPE_LIST ,p_status OUT VARCHAR2) AS v_count NUMBER(5); row_detail CER_GL_ENTRY_TYPE; BEGIN –p_arr_int := NEW array_int (); –p_arr_int.EXTEND (10); –len := p_array.COUNT; […]

如何使用java读取从存储过程返回的类型的ARRAY?

这是在以下位置发布的问题的延续: 将Bean列表传递给oracle存储过程的Java程序 – 一次性传递整个列表而不是一个接一个地追加对象 我一直在尝试增强上面链接位置中提到的存储过程,并在实现中感到困惑。 而不是VARCHAR2作为过程的输出,我现在想要返回NUM_ARRAY作为过程的输出。 你能帮我实现逻辑来读取我的java代码中的NUM_ARRAY吗? 通常使用Map out = super.execute(inParams)返回输出; 我现在如何将NUM_ARRAY提取到我的bean? The source code implementation is as follows. import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.SQLException; import java.util.HashMap; import java.util.Map; import javax.sql.DataSource; import oracle.jdbc.OracleTypes; import oracle.sql.ARRAY; import oracle.sql.ArrayDescriptor; import org.apache.log4j.Logger; import org.springframework.jdbc.core.SqlOutParameter; import org.springframework.jdbc.core.SqlParameter; import org.springframework.jdbc.core.SqlTypeValue; import org.springframework.jdbc.object.StoredProcedure; public class RevPrdBrkDwnSP extends StoredProcedure{ private final Logger […]