2012-10-21 4 views
2

복잡한 입/출력 매개 변수를 가진 Oracle 패키지에 복잡한 프로 시저가 있습니다.오라클에서 프로 시저를 호출하기위한 Jdbc 유틸리티

PROCEDURE Authorize(PO_ErrorCode   OUT NUMBER, 
        PO_ErrorText   OUT VARCHAR2, 
        PI_Count    IN NUMBER, 
        PI_Setting   IN Setting, 
        PI_InputData   IN InputData, 
        PO_PreData   OUT InputData); 

을하고 다음 두 구조 SettingInputData 표시됩니다 : 나는 다음에 내 절차 중 하나를 표시합니다 나는 몇 가지 구조를 가지고 위의 설명과 함께

CREATE OR REPLACE TYPE Setting as object(ProviderType NUMBER 
              SwitchCode NUMBER) 

CREATE OR REPLACE TYPE Input_Data Is Table Of MainInputData; 

CREATE OR REPLACE TYPE MainInputData as object(itemId   NUMBER, 
               itemValue   NVARCHAR2(150), 
               itemEncyptd  NUMBER, 
               itemEncryptKey RAW(16)); 

은 포함 : Type, Array, Array of TypeArray of Primitive.

나는이 jdbc하여 기능과 오라클 드라이버 및 관련 클래스와 같은 STRUCT & ARRAY를 호출하지만,이 목표에 대한 많은 복잡한 코드를 생성합니다.

내 질문은 : 간단한 코드로이 작업을 수행 할 수있는 유틸리티 또는 프레임 워크가 있습니까? spring에는 jdbc 유틸리티가 있지만 경험이 없습니다.

답변

2

스프링 유틸리티를 사용할 수 있습니다.

StoredProcedure 클래스가 있으며 sqlOutParametersqlInParameter을 사용하여 생성자 내에서 모든 입력 및 출력 매개 변수와 유형을 선언 할 수 있습니다. 귀하의 경우에는

는 3 개 인수 execute 방법을 덮어 쓰기

super.execute(a,b,c)

link 도움이 될 것입니다 호출 할 수있는 3 개 입력 매개 변수이를 통과있다.

1

우리는 당신이 필요로하는 것을 정확하게 수행하는 내부 유틸리티를 가지고 있습니다. 그것은 생성

  • JPA 엔티티 Oracle Object Type의 기반으로 eclipselink 특정 주석으로 확장.
  • PL/SQL 패키지를 반영하는 Java 인터페이스. 런타임은 EclipseLink에서

java.sql.Struct은 인스턴스로 엔티티 인스턴스 변환 및 동적 PL/SQL 절차 및 함수 호출 우리 런타임 인터셉트 생성 자바 인터페이스를 호출한다. 또한 IN/OUT 매개 변수를 지원하고 PL/SQL 패키지를 웹 서비스로 공개 할 수 있습니다. 계층 적 Oracle Object Types가 많은 곳에서 우리의 개발을 용이하게합니다. 공개적으로 사용할 수 있기를 바랍니다. 도구에 관심이 있으시면 저에게 연락하십시오.

이 목적으로 Oracle의 jpublisher을 사용할 수도 있습니다.