ヘッダーをスキップ
Oracle® Fusion Middleware Oracle TopLink Java Persistence API (JPA)拡張機能リファレンス
12c (12.1.2)
E48005-01
  目次へ移動
目次

前
 
次
 

@NamedPLSQLStoredProcedureQuery

@NamedPLSQLStoredProcedureQueryを使用して、名前付き問合せとしてOracle PLSQLストアド・プロシージャをコールする問合せを定義します。

注釈要素

表2-37は、この注釈の要素を示しています。

表2-37 @NamedPLSQLStoredProcedureQueryの注釈要素

注釈要素 説明 デフォルト

procedureName

(必須)ストアド・プロシージャの名前


name

(必須)このストアド・プロシージャ問合せを参照する一意の名前


resultClass

(オプション)結果のクラス


hints

(オプション)問合せヒント


parameters

(オプション)ストアド・プロシージャのパラメータ


resultSetMapping

(オプション)SQLResultMappingの名前



使用方法

この注釈は、JDBCからアクセスできないRECORDおよびTABLEなどの複合PLSQLタイプのサポートを追加します。

@NamedPLSQLStoredProcedureQueryは、エンティティ、埋込み可能またはMappedSuperclassに指定できます。

例2-69に、この注釈を使用する方法を示します。

例2-69 @NamedPLSQLStoredProcedureQuery注釈の使用

@NamedPLSQLStoredProcedureQuery(
    name="getEmployee",
    functionName="EMP_PKG.GET_EMP", 
    parameters={
        @PLSQLParameter(
            name="EMP_OUT", 
            direction=Direction.OUT,
            databaseType="EMP_PKG.EMP_REC"
        )
    }
)
@Embeddable
@Struct(name="EMP_TYPE", fields={"F_NAME", "L_NAME", "SALARY"})
@PLSQLRecord(
    name="EMP_PKG.EMP_REC",
    compatibleType="EMP_TYPE",
    javaType=Employee.class,
    fields={
        @PLSQLParameter(name="F_NAME"),
        @PLSQLParameter(name="L_NAME"),
        @PLSQLParameter(
            name="SALARY",
            databaseType="NUMERIC_TYPE"
        )
    }
)
 
public class Employee { ...}

関連項目

詳細は、次を参照してください。